如何在Java中替换Curly大括号?

Hir*_*ren 4 java

我试图在java中替换正则表达式时遇到错误.

例如:

String h = "{hiren:}";

h=h.replaceAll(":}", ":\"\"}");
Run Code Online (Sandbox Code Playgroud)

请给我解决方案.谢谢

Men*_*ena 6

你需要双重转义Patterns中的一些特殊字符.

String#replaceAll 采用正则表达式,因此:

String h = "{hiren:}"; h=h.replaceAll(":\\}", ":\"\"}");
Run Code Online (Sandbox Code Playgroud)

否则,您可以使用String#replace没有正则表达式,也不需要转义.

String h = "{hiren:}"; h=h.replace(":}", ":\"\"}");
Run Code Online (Sandbox Code Playgroud)

相信String#replace不会取代所有事件,这是一个常见的错误假设.