大家好,我有一个像这样的字符串
String main = "Sandy \"children\":[]"
String foo = "\"children\":[]";
main = main.replaceAll(foo, "");
如果我想用单个字符“”替换 main 中的整个 foo 那么我需要使用什么正则表达式?
我将有一个像这样的 json 数据,我需要替换所有空的子对象
{"data" : "Search engines",
"children":[ {
"data":"Yahoo","children":[{"data":"1","children":[{}]}]},
{"data":"Bing","children":[{"data":"2","children":[]}]},{"data":"Bing2"},{"data":"Bing3"},{"data":"Bing4"},{"data":"Bing5"},{"data":"Bing6"},{"data":"Bing7"},{"data":"Bing34"}]
}
最佳答案
好的,现在您已经提供了更多信息,我强烈建议不要为此使用正则表达式。解析 JSON 并使用它的 DOM 表示形式。否则,无论你使用什么,都一定会有办法欺骗你。在我看来,这样的文本表示与正则表达式根本不匹配。
<小时/>(原答案...)
目前尚不清楚您为什么要使用 replaceAll
和正则表达式。
我怀疑你只是想要:
main = main.replace(foo, "");
这会将 foo
视为普通字符串,而不是正则表达式。除非您确实想要使用正则表达式,否则请使用 replace
而不是 replaceAll
。
关于java - 删除右括号java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7797899/