【发布时间】:2015-10-19 16:24:37
【问题描述】:
我有 JSON 格式的字符串,但不是有效的 JSON 字符串。字符串如下(它是单行字符串,但为了清楚起见,我添加了新行。)
"{
clientId :\"abc\",
note:\"ATTN:Please take care of item x\"
}"
我正在尝试使用 javascript 正则表达式修复它(重新格式化为有效的 JSON)。我目前正在使用以下正则表达式,但它不适用于第二个属性,即注意它的值中有冒号 (:)。
retObject.replace(/(['"])?([a-zA-Z0-9_]+)(['"])?:/g, '"$2": ');
我在这里要做的是使用正则表达式将上面的字符串重新格式化为
"{
"clientId" :"abc",
"note":"ATTN:Please take care of item x"
}"
尝试了很多方法,但由于我还是 RegEx 的初学者,所以无法做到。
【问题讨论】:
-
这可能是无效的,因为该“字符串”有多行,与 JavaScript 中的 that 不同。
-
在 SO 上有很多类似的问题使用 RegEx..请看他们
-
它的单行字符串。为了清楚起见,我添加了新行。对于那个很抱歉。我应该在帖子中提到它。
-
如果这些答案对您有帮助,请接受其中一个。
标签: javascript json regex