package cn.com.nike.util;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/**
 * 对String进行操作
 * @author soya.song
 *2017.3.21
 */
public class UtilString {
	private static final Logger log = LoggerFactory.getLogger(UtilString.class);
	/**
	 * 去除空格,下划线,全部转小写
	 * 应用场景:将excel列名转换为对象属性名
	 * 对象属性名使命规则:列名去除空格,下划线,全部小写以后即为属性名,该处对象不采取驼峰命名规则,因动态取值,赋值,固需遵循该规则
	 * @param str
	 * @return
	 */
	  public static String newString(String str){
		  return str.toLowerCase().replaceAll("\\s*", "").replaceAll("_", "");//全部小写,去除空格,去除下划线
	  }
	/**
	 * 全部转小写
	 * @param str
	 * @return
	 */
	  public static String allLowercase(String str){
		  return str.toLowerCase();
	  }
	/**
	 * 去除空格
	 * @param str
	 * @return
	 */
	  public static String RemoveBlankSpace(String str){
		  return str.replaceAll("\\s*", "");
	  }
	  /**
		 * 去除下划线
		 * @param str
		 * @return
		 */
	  public static String RemoveUnderline(String str){
		  return str.replaceAll("_", "");
	  }
	  /**
	   * 去除斜杠
	   * @param str
	   * @return
	   */
	  public static String RemoveSlash(String str){
		  return str.replaceAll("/", "");
	  }
	  
	  /**
		 * 去除所有空格,所有特殊符号,首字母小写,这个方法把数字也去除了
		 * 应用场景:将excel列名改为java对象属性名
		 * 1 去除/ _ () 所有空格
		 * 2 首字母小写 
		 * @param str
		 * @return
		 */
	  public static String getNewString(String str){
		    log.info("UtilString.getNewString.转换前为。。。。。。。。。。"+str);
		    String newStr=toLowerCaseFirstOne (str.trim().replaceAll("_", "").replaceAll("/", "").replaceAll("\\(|\\)", "").replaceAll("\\s*", ""));
	        log.info("UtilString.getNewString.转换后为。。。。。。。。。。"+newStr);
			return newStr;  
	  }
	//首字母转小写
		public static String toLowerCaseFirstOne(String s){
		  if(Character.isLowerCase(s.charAt(0)))
		    return s;
		  else
		    return (new StringBuilder()).append(Character.toLowerCase(s.charAt(0))).append(s.substring(1)).toString();
		}
//		//首字母转大写
		public  String toUpperCaseFirstOne(String s){
		  if(Character.isUpperCase(s.charAt(0)))
		    return s;
		  else
		    return (new StringBuilder()).append(Character.toUpperCase(s.charAt(0))).append(s.substring(1)).toString();
		}
		
		  /**
				 * 去除所有空格,所有特殊符号,首字母小写
				 * 该方法去除了一切特殊符号,包括数字
				 * @param str
				 * @return
				 */
			  public static String getNewStringNoNum(String str){
				  log.info("UtilString.getNewString.转换前为。。。。。。。。。。"+str);
			        char[] chars = str.toCharArray();  
			        StringBuffer buffer=new StringBuffer();
			        for(int i = 0; i < chars.length; i ++) {  
			            if((chars[i] >= 19968 && chars[i] <= 40869) || (chars[i] >= 97 && chars[i] <= 122) || (chars[i] >= 65 && chars[i] <= 90)) {  
//			                buffer.append(chars[i]);
			                if (chars[0] >= ‘A‘ && chars[0] <= ‘Z‘) {//当为字母时,则转换为小写
			    	            buffer.append(chars[i]);
			    	        }
			            }  
			        }
			        System.out.print(toLowerCaseFirstOne(buffer.toString())); 
			        log.info("UtilString.getNewString.转换后为。。。。。。。。。。"+toLowerCaseFirstOne(buffer.toString()));
					return toLowerCaseFirstOne(buffer.toString());  
			  }
}
原文:http://www.cnblogs.com/songyunxinQQ529616136/p/6639804.html