我想删除所有 { } 如下:
String regex = getData.replaceAll("{", "").replaceAll("}", "");
但是用日志强制关闭我的应用程序。
java.util.regex.PatternSyntaxException: Syntax error U_REGEX_RULE_SYNTAX
我做错了什么?
你需要逃脱{
:
String regex = getData.replaceAll("\\{", "").replaceAll("\\}", "");
花括号用于指定正则表达式中的重复,因此您必须转义它们。
此外,您还应该考虑一次性删除所有括号,而不是调用 replaceAll(String, String) 两次。
String regex = getData.replaceAll("\\{|\\}", "");
对于您想要做的事情,您不需要使用正则表达式!
您可以使用该replace
方法来匹配特定的字符,这会增加一点可读性:
String regex = getData.replace("{", "").replace("}", "");
逃避\\{
只是为了能够使用replaceAll
作品,但在你的情况下没有意义