适用于正则表达式匹配的转义

时间:2015-08-05 10:02:32

标签: java regex

我有这样的替换声明

output.replaceAll(REGEX_BRACKETS, "<$2$3>");

如何为StringEscapeUtils$2申请转发(例如$3)?

1 个答案:

答案 0 :(得分:1)

以下是Matcher内如何完成此操作的示例:

String s = "word 123 some text inside next 567";
StringBuffer result = new StringBuffer();
Matcher m = Pattern.compile("(\\w+)\\s+(\\d+)").matcher(s);
while (m.find()) {
    String wrd = m.group(1);
    String num = m.group(2);
    String replacement = wrd.toUpperCase() + num;
    m.appendReplacement(result, replacement);
}
m.appendTail(result);
System.out.println(result.toString());

请参阅IDEONE demo

只使用自己的功能,我只是为了演示使用toUpperCase()