错误示例:
public class PatternTest {
public static void main(String[] args) {
String data="这个商品标价$2";
data=data.replaceAll("(商品)","$3");
System.out.println(data);
}
} 执行结果:
解决办法:
public class PatternTest {
public static void main(String[] args) {
String data="这个商品标价$2";
data=data.replaceAll("(商品)", Matcher.quoteReplacement("$3"));
System.out.println(data);
}
}
执行结果:
如果需要替换$等正则符号也可以这样
public class PatternTest {
public static void main(String[] args) {
String data="这个商品标价$2";
data=data.replaceAll(Pattern.quote("$"), Matcher.quoteReplacement("¥"));
System.out.println(data);
}
} 执行结果:
搞定
版权所有 © 【代码谷】 欢迎非商用转载,转载请按下面格式注明出处,商业转载请联系授权,违者必究。(提示:点击下方内容复制出处)
源文:《【已解决】Java正则替换replaceAll/replaceFirst遇到替换的内容包含正则符号报错》,链接:https://www.daimagu.com/article/1122.html,来源:【代码谷】
评论