gpt4 book ai didi

JavaScript 括号正则表达式

转载 作者:搜寻专家 更新时间:2023-11-01 05:23:01 24 4
gpt4 key购买 nike

我想用这个“ad231-3213-e12211”替换这个:“[ID]”

我正在使用这个正则表达式:/\[ID\]/i

它与 .replace(/\[ID\]/i, id) 完美配合

现在我把它封装在这个函数中:

self.changeUrl = function (url, id, replaceExp) {
replaceExp = replaceExp === 'undefined' ? new RegExp("\[ID\]") : replaceExp instanceof RegExp ? replaceExp : new RegExp("\[ID\]"); // basically ensure that this is a regexp

return url.replace(replaceExp, id);
};

还有这个:

self.changeUrl = function (url, id, replaceExp) {
replaceExp = replaceExp === 'undefined' ? new RegExp("\u005BID\u005D") : replaceExp instanceof RegExp ? replaceExp : new RegExp("\u005BID\u005D"); // basically ensure that this is a regexp

return url.replace(replaceExp, id);
};

而且它们都不起作用,我缺少什么?

最佳答案

由于您将字符串传递给 RegExp 构造函数,因此您还需要转义字符串中的 \ 字符。因此,在字符串变量中使用 \\[ 实际上会变成 \[;而 \[ 将仅变为 [

new RegExp( "\\[ID\\]" )

关于JavaScript 括号正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24274392/

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