驼峰式转下划线大写(包含对数字的判断)

   以下是完整的接口,可作为工具调用!

public static String underscoreName(String name) {  
   StringBuilder result = new StringBuilder();  
   if (name != null && name.length() > 0) {  
       // 将第一个字符处理成大写  
       result.append(name.substring(0, 1).toUpperCase());  
       // 循环处理其余字符  
       for (int i = 1; i < name.length(); i++) {  
           String s = name.substring(i, i + 1);  
           // 在大写字母前添加下划线  
           if (s.equals(s.toUpperCase()) && !Character.isDigit(s.charAt(0))) {  
               result.append("_");  
           }  
           //在数字前添加下划线
           Pattern pattern = Pattern.compile("[0-9]*");
           Matcher isNum = pattern.matcher(s);
           if(isNum.matches() ){
            result.append("_");
           }
           // 其他字符直接转成大写  
           result.append(s.toUpperCase());  
       }  
   }  
   return result.toString();  
}

你可能感兴趣的:(java)