如何将多行正则表达式文本转义为有效的 json?


Value Year (d+)
Value Timezone (S+)
Value MonthDay (d+)
Value Month (w+)
Value Time (..:..:..)
Start
^${Time}.* ${Timezone} w+ ${Month} ${MonthDay} ${Year} -> Record

这是 texfsm 的模板,它使用正则表达式模板解析基于 cli 的响应。这是来自javascripts json.stringify的返回

{"template":"Value Year (\d+)nValue Timezone (\S+)nValue MonthDay (\d+)nValue Month (\w+)nValue Time (..:..:..)nnStartn  ^${Time}.* ${Timezone} \w+ ${Month} ${MonthDay} ${Year} -> Record"}

我想在前端编写此模板,然后将其发送到我的服务器进行处理。我使用过json.stringify((,但是当尝试在python中使用json.loads((时,它会对不正确的转义字符感到痛苦。

ValueError: Invalid escape: line 1 column 83 (char 82)

我怎样才能正确地转义这个模板,然后取消转义它并在我的服务器上使用它?

--

作为旁注。

我在这里看到了如何转义正则表达式( Javascript中有RegExp.escape函数吗?虽然我有点不确定如何摆脱它。

您必须转义所有美元符号字符。 将所有 $ 更改为 \$

最新更新