我有一个像这样的json字符串:
string = "{name={first=sam, last=vo}, hobbies={hobby1=football, hobby2=swimming}}"
我想删除“name =”和“hobbies =”,以便我使用此模式:\w*\=(?={)
- >使用editPadPro进行测试
但是,当我在java中使用replace all:
时String pattern = "\\w*\\=(?={)";
String removedParent = string.replaceAll(pattern, "");
我收到此错误消息
"Exception in thread "main" java.util.regex.PatternSyntaxException: Illegal repetition near index 7
\w*\=(?={)"
你可以给我一些建议吗?
此致
萨姆
答案 0 :(得分:4)
问题是{
字符是正则表达式语法中的特殊字符,表示金额(例如\d{2}
表示2位数)。在您的情况下,您希望匹配文字{
,这意味着您需要转义 {
字符,因此您需要将正则表达式更改为:{{1 }}
对我来说,这产生了:
{{first = sam,last = vo},{hobby1 = football,hobby2 = swimming}}
答案 1 :(得分:1)