JSON 中断:使用 coldfusion 正则表达式删除一些引号和双引号



>我在这里发疯了,试图在我的 JSON 响应中删除一些引号和双引号,

还有一些字符也像句号,逗号等,我正在尝试这样

<cfset mystring = rereplace(mystring, '(['""])', '\1', 'all') /> 

但无法修复,请指导我谢谢

我认为问题是您将正则表达式模式字符串括在单引号中,但随后转义了该字符串中的双引号,而不是单引号。您可以尝试以下操作:

<cfset mystring = rereplace(mystring, "(['""])", "\1", "all") />

但我不确定这真的会做你想做的事。这也将转义不需要转义的双引号和单引号——例如名称和值周围的引号。例如,JSON

[{"name":"value"}]

会成为

[{"name":"value"}]

那肯定不是你想要的!相反,您需要确定双引号在用双引号括起来的字符串中的位置,并对其进行转义(假设它们尚未转义)。我不确定 ColdFusion 正则表达式或任何正则表达式风格能否胜任这项任务。相反,无论生成无效 JSON 的任何服务都需要修复。

最新更新