【发布时间】:2017-03-03 20:34:14
【问题描述】:
我在 javascript 中创建了一个示例数据生成器,输出是一个字符串化的 json 对象。现在我需要从输出中的每个元素中删除第一个/最后一个反斜杠。
当前输出为:
array(\"'This is' a test\",\"Testie Test\",\"Bob the tester\",\"Wanna test "some" more\")
需要输出:
array("'This is' a test","Testie Test","Bob the tester","Wanna test \"some\" more")
我需要转义双引号的文本,但我需要删除第一个和最后一个反斜杠,因为数据随后被复制并上传到另一个工具并被这些反斜杠打断。
我可以使用简单的正则表达式轻松删除所有反斜杠:
var = var.replace(/\\\\/g,"")
然而,内部文本不再被转义。我尝试了更复杂的正则表达式的变体来实现这一点,但没有成功。任何帮助表示赞赏。
谢谢
【问题讨论】:
-
为什么要删除所有的反斜杠? JSON 使用反斜杠对文本进行编码以转义引号。
-
原始 JSON 是什么?格式为
{"name": value, ...} -
@BitByte 因为第一个/最后一个反斜杠破坏了使用此示例数据的第二个工具。在我可以为第二个工具创建 Web 服务之前,这是一个必要的步骤。
-
是的 {"city_name": "vancouver", "prov": "bc", ...}
-
无视以上...原文为:{"id":"xxxx", "data":["text","text","text",...]},{" id":"xxx", "data":[.....]
标签: javascript json regex