【发布时间】:2026-02-21 15:15:01
【问题描述】:
删除 JavaScript 中的临时转义字符...
基本示例:
我有以下字符串:
"[x^::^^y]"
输出应该是:
"[x::^y]"
基本上,任何与另一个^ 不相邻的^ 都应被删除,^^ 的任何出现都应替换为^
更多示例:
.parse("[^^x:^y^:^^^^^^]") // output: "[^x:y:^^^]"
.parse("[^x:^^^^y^^^z]") // output: "[x:^^y^z]"
它将成为我正在开发的 JSON 替代方案的解析脚本的一部分,以期减少内部存储文件的文件大小。
【问题讨论】:
-
如果你想要一个更紧凑的 JSON 替代方案,我可以建议protocol buffers吗?
-
@PatrickRoberts 并没有真正回答我的问题,但感谢您的建议。我会再调查一下。
-
尝试替换("^","").replace("^^","^")
-
@ArunKumarMN 之所以有效,是因为每次调用只替换第一次出现的搜索字符串...
-
这可能有效
str.replace(/\^+/g, m => m.length % 2 ? '' : '^')
标签: javascript regex replace