java - 删除右括号java

标签 java regex

大家好,我有一个像这样的字符串

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/

相关文章:

php - 用字符串中的同义词替换单词

java - 如何在 java 中的字符串中找到 '|' 模式?

javascript - 带小数点和千位分隔符的正则表达式

java - 将位图转换为 1 位位图

java - 通过不同的java线程从同一个数据库表中读取不同的数据集

java - NullPointerException 从文件中读取行

java - 尝试让 View 反射(reflect)编辑者的状态

javascript - 如何使用 javascript 匹配和删除空白 html 标记?

java - 根据记录集验证文件

java - 如何在POM maven项目中使用数据提供程序从excel表中读取数据