当我尝试在Java中替换正则表达式时,出现了错误。
例如:
String h = "{hiren:}";
h=h.replaceAll(":}", ":\"\"}");
请给我一个解决方案。谢谢。
当我尝试在Java中替换正则表达式时,出现了错误。
例如:
String h = "{hiren:}";
h=h.replaceAll(":}", ":\"\"}");
您需要在Pattern
中双重转义某些特殊字符。
String#replaceAll
接受正则表达式,因此:
String h = "{hiren:}"; h=h.replaceAll(":\\}", ":\"\"}");
否则,您可以使用String#replace
,无需正则表达式或转义。String h = "{hiren:}"; h=h.replace(":}", ":\"\"}");
普遍错误的看法是认为String#replace
不会替换所有出现的字符串。
.replace()
而不是.replaceAll()
。请注意,尽管它的名称如此,但此方法确实替换其参数的所有出现。 - fge