Java 为正则表达式匹配应用转义
我有这样的替代声明Java 为正则表达式匹配应用转义,java,regex,Java,Regex,我有这样的替代声明 output.replaceAll(REGEX_BRACKETS, "<$2$3>"); 如何通过(StringEscapeUtils例如)将转义应用于$2和$3?以下是一个如何在匹配器中实现的示例: String s = "word 123 some text inside next 567"; StringBuffer result = new StringBuffer(); Matcher m = Pattern.compile("(\\w
output.replaceAll(REGEX_BRACKETS, "<$2$3>");
如何通过(
StringEscapeUtils
例如)将转义应用于$2
和$3
?以下是一个如何在匹配器中实现的示例:
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());
看
只需使用您自己的函数,我使用toUpperCase()
只是为了演示。AFAIK,如果您想在regex中操作被$x
替换的字符串,您需要使用Matcher.group()
。