gpt4 book ai didi

java - String.replaceAll() 问题

转载 作者:行者123 更新时间:2023-11-30 07:22:34 25 4
gpt4 key购买 nike

我想替换所有完全匹配的

 fm.get('Order# 

在一个有值的长字符串中

 fm.get('Order__'

我使用的语法如下:

    String calcStr = "return fm.get('Order#');";
String fname = "Order#";
String validfName = "Order__";

String modifiedCalc1 = calcStr.replaceAll("fm.get('"+fname+"\\b", "fm.get('"+validfName);
System.out.println(modifiedCalc1);

但我收到模式错误。

    Exception in thread "main" java.util.regex.PatternSyntaxException:
Unclosed group near index 18
\bfm.get('Order#\b
^
at java.util.regex.Pattern.error(Unknown Source)
at java.util.regex.Pattern.accept(Unknown Source)

最佳答案

您需要转义左括号和点。

对于这种特殊情况,还删除末尾的 \b

String modifiedCalc1 = calcStr.replaceAll("fm\\.get\\('"+fname, "fm.get('"+validfName);

关于java - String.replaceAll() 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12623905/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com