使用正则表达式对字符串进行大写

时间:2013-06-10 09:56:03

标签: java regex

是否可以使用正则表达式将大写字符串转换为小写?

我目前有这段代码:

strFileText = strFileText.replaceAll("COMMITTEE ON ", "committee on ");

而不是("COMMITTEE ON ", "committee on ");我可以写一个正则表达式吗?

3 个答案:

答案 0 :(得分:2)

正则表达式本身不能进行大小写转换。

但您可以轻松地将正则表达式与任何可以使用Matcher.appendReplacement()用Java编写的程序替换相结合:

public String replaceLowerCase(final String input, final String pattern) {
    Pattern p = Pattern.compile(pattern);
    Matcher m = p.matcher(input);
    StringBuffer sb = new StringBuffer();
    while (m.find()) {
        m.appendReplacement(sb, m.group().toLowerCase());
    }
    m.appendTail(sb);
    return sb.toString();
}

你可以这样称呼它:

System.out.println(replaceLowerCase(myInput, "COMMITTEE ON");

答案 1 :(得分:0)

您可以{/ 1}}使用

  

使用。将此String中的所有字符转换为小写   默认语言环境的规则。这相当于打电话   toLowerCase(Locale.getDefault())。

SEE HERE

答案 2 :(得分:0)

只需使用string.toLowerCase()代替正则表达式。