【发布时间】:2017-08-12 22:11:45
【问题描述】:
我想替换 JSON 字符串中的点和单撇号字符,即仅在引用时。使用此输入:
String json = "{\"someJsonMap\":{\"with.dot.s\":1.0,\"'with.dots'.and.apostroph's.\":20.001}}";
我想转这个:
{"someJsonMap":{"with.dot.s":1.0,"with.dots'.and.apostroph's":20.001}}
进入这个:
{"someJsonMap":{"withdots":1.0,"withdotsandapostrophs":20.001}}
感谢任何帮助、解决方案或解释。
【问题讨论】:
-
不是我的反对意见,但您最有可能在这里使用 JSON 解析器。即使你用正则表达式破解它,如果以后结构发生变化,你的代码也很容易崩溃。
-
正确使用正则表达式有点棘手。例如考虑
{"with.dot.and\"quote": 1}。 -
@Henry 这是一个引号字符,而不是撇号字符
-
感谢您的 cmets,我想我会按照建议的安全原因使用解析器。
标签: java regex quotes replaceall