如果JSON字符串是这样的话,你如何逃避双引号:
var str = "[{Company: "XYZ",Description: ""TEST""}]"
我想在值TEST中转义次要双引号。
我试过这个,但它不起作用。
var escapeStr = str.replace(/""/g,'\"');
我错过了什么?
答案 0 :(得分:22)
应该是:
var str='[{"Company": "XYZ","Description": "\\"TEST\\""}]';
首先,我将外部引号更改为单引号,因此它们不会与内部引号发生冲突。然后我在TEST
周围的最内层引号之前放入反斜杠,以逃避它们。我从反斜杠中逃脱,以便按字面意思对待。
使用JSON函数可以得到相同的结果:
var str=JSON.stringify({Company: "XYZ", Description: '"TEST"'});
答案 1 :(得分:1)
这里内部报价已转义,整个字符串采用单引号。
var str = '[{ "Company": "XYZ", "Description": "\\"TEST\\""}]';