gpt4 book ai didi

javascript - 在 .replace() 方法中使用正则表达式

转载 作者:行者123 更新时间:2023-11-28 13:53:12 25 4
gpt4 key购买 nike

我在 javascript 中使用 .replace() 方法将对象的序列化数组转换为更简单的序列化字符串。这是我的代码:

b = //string
b = b.replace(/},{/gi, "},cb,,{");
b = b.replace(/}],[{/gi, "},cb,,row,{"); //The error is being thrown for this line

当我运行此代码时,我在第三行收到“Unexpected Token/”错误。为什么是这样?该线与其上方的线或多或少相同。请帮我解决这个问题。

注意:我无法提交没有正则表达式作为参数的字符串,因为我需要多次替换子字符串。

最佳答案

在此上下文中,开头的 [ 是一个表示字符类的特殊字符。由于其后没有出现 ],因此会发生错误。

您只需转义 [ 即可使正则表达式正常工作:

b = b.replace(/}],\[{/gi, "},cb,,row,{");

为了保持一致性,我会毫不犹豫地转义其他大括号字符,因为它们也是特殊字符(但碰巧在这种情况下按字面解析):

b = b.replace(/\}\],\[\{/gi, "},cb,,row,{");

关于javascript - 在 .replace() 方法中使用正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9549328/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com