我有一个问题,有人没有正确转义值中的双引号,以便稍后被解释为 JSON 字符串。
字符串示例:
{"description":"This is my 12" pizza I ordered.","value":"1"}
当我尝试让 JSON.parse() 处理它时,由于未转义的双引号(指以英寸为单位的大小),它会给出一个错误
起初,我想 - 只是做:
string.replace(/\"/g,'\"');
但是当然这也避开了所有有效的双引号。所以,我不是正则表达式的专家,但我环顾四周寻找一些答案,我认为这需要消极的前瞻性?
有人可以帮助构建一个正则表达式来查找(替换)任何双引号序列,其中有问题的双引号后面的下一个 2 字符序列不是空格逗号吗?
我知道这不是一个完全通用的解决方案,(让这个人最终解决问题),但不幸的是我没有通用解决方案的奢侈。
TIA
更新 - 而不是考虑示例字符串(仅用于说明)。是否可以在每个双引号之前和之后测试是否存在有效的 JSON - 即查找以下任何字符,{[:
在每个双引号之前和之后?我想这就是我要问的 - 这可以通过前瞻/正则表达式来完成吗?