任何人都可以就包含撇号的驼峰式字符串提供帮助,因此我不希望撇号后面的下一个字母大写。
我的代码从一个 txt 文件中读取,然后相应地处理它。
例如“MATTHEW SMITH”将被转换为“Matthew Smith”但是“MATTHEW S'MITH”将被转换为“Matther S'Mith”,而它应该是“S'mith”
public static String toCamelCase(String tmp){
Pattern p = Pattern.compile(CAMEL_CASE_REG_EXP);
Matcher m = p.matcher(tmp);
StringBuffer result = new StringBuffer();
String word;
while (m.find())
{
word = m.group();
result.append(word.substring(0,1).toUpperCase()+word.substring(1).toLowerCase());
}
return result.toString();
}
public static final String CAMEL_CASE_REG_EXP = "([0-9]+)?([a-zA-Z]+)(\\')?(\\-)?(\\s)?";
提前致谢。