gpt4 book ai didi

javascript - 已转义但仍为 'Uncaught SyntaxError: Invalid regular expression:regex: Unterminated group'

转载 作者:行者123 更新时间:2023-12-03 00:29:01 24 4
gpt4 key购买 nike

我很难弄清楚如何转义我的正则表达式。我已经用这个函数转义了它:

function escapeRegExp(string) {
return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&')
}

但我仍然有错误:

Uncaught SyntaxError: Invalid regular expression: regex: Unterminated group

function escapeRegExp(string) {
return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&')
}
var str = "ubuntu-18.10-desktop-amd64.iso.torrent"
var search = "*Ubuntu.18*"
search = escapeRegExp(search);
var re = new RegExp('^(?=.*' + search.split(/[\s,_.:-]+/).join(')(?=.*') + ')', 'gi');
var result = re.test(str);
console.log(result);

最佳答案

* 添加到字符类,并在其前面添加可选的反斜杠:

search.split(/\\?[\s,_.:*-]+/).join(')(?=.*')

如果没有这个,上面的方法会在 \. 处分割,其中找到一个句点,并保持 \ 完整,稍后在 join 方法中领先于 )出现错误。

关于javascript - 已转义但仍为 'Uncaught SyntaxError: Invalid regular expression:regex: Unterminated group',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53959192/

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