我有一个包含某些变量的字符串,例如"This is string containing $variable$"
. 我想$variable$
用一个新字符串替换它。如果我使用 replaceall 方法,就像str.replaceall("$variable$","new_value")
它没有被替换一样。但如果我给出没有$
符号,它就是替换。但我的输出是这样的,$new_value$
. 我需要它没有$
符号。
问问题
9734 次
2 回答
2
String.replaceAll() 将正则表达式作为参数,其中 $ 具有特殊含义。只需使用 \ 转义美元符号:
myString.replaceAll("\\$variable\\$", replacement);
于 2013-01-07T12:30:15.520 回答
2
尝试使用String.replace(CharSequence, CharSequence):
str.replace("$variable$","new_value");
因为String.replaceAll()需要一个正则表达式作为第一个参数,而正则表达式上的$字符代表“在字符串末尾匹配”
于 2013-01-07T12:30:52.927 回答