为了账号安全,请及时绑定邮箱和手机立即绑定

正则表达式匹配,用于处理JSON中的“”

正则表达式匹配,用于处理JSON中的“”

慕桂英546537 2021-05-05 13:10:26
正则表达式处理涉及双引号的给定输入模式输入:{"adad":""Dip. Clinico E Di Ricerca Clinica-u.o.c.i Divisione ,gg677"","asd":"","dadd":"13213","Finance":[{"Financial_Contact_End_Date":""},{"Financial_Monthly_End_Date":""}]}我已经尝试过此正则表达式来处理提供的输入。a.replace("\"\"","\"").replaceAll("(:\",)",":\"\",").replaceAll("(:\"})", ":\"\"}")a.replace("\"\"","\"").replaceAll("(:\",)",":\"\",").replaceAll("(:\"})", ":\"\"}")预期的:{"adad":"Dip. Clinico E Di Ricerca Clinica-u.o.c.i Divisione ,gg677","asd":"","dadd":"13213","Finance":[{"Financial_Contact_End_Date":""},{"Financial_Monthly_End_Date":""}]}我该如何解决这个问题?
查看完整描述

2 回答

?
有只小跳蛙

TA贡献1824条经验 获得超8个赞

此正则表达式将解决您的问题:

(("")(?!(,|})))|((?<!:)(""))

解释:

此正则表达式捕获""不以'或结尾的所有s}

(("")(?!(,|})))

此正则表达式捕获所有""不以开头的s:

((?<!:)(""))

理论:

负前瞻

(?!...)

从表达式的当前位置开始,确保给定的模式不匹配。不消耗字符。

例如:

/foo(?!bar)/

foobar ** foo** bar

负向后看

 (?<!...)

确保给定的模式不匹配,并在表达式的当前位置结束。图案必须具有固定的宽度。不消耗字符。

例如:

/(?<!not )foo/

不是foo,而是 foo


查看完整回答
反对 回复 2021-05-27
  • 2 回答
  • 0 关注
  • 115 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信