连续句点的javascript搜索字符串

连续句点的javascript搜索字符串,javascript,regex,string,search,Javascript,Regex,String,Search,如何在一行中搜索多个句点的字符串,例如“…”。 string.search(/…/); string.search(“[…]”); 即使检测到单个周期,上述值也将返回true。 string.search(“…”); 更糟糕的是,它总是返回true,即使没有周期 var banlist = ["item1", "item2", "[...]"]; 我正在搜索列表中的每个字符串,我需要能够搜索“…” 编辑: 现在我有一个新问题。三个句点正好是unicode字符8230,在搜索中找不到它。

如何在一行中搜索多个句点的字符串,例如“…”。 string.search(/…/); string.search(“[…]”); 即使检测到单个周期,上述值也将返回true。 string.search(“…”); 更糟糕的是,它总是返回true,即使没有周期

    var banlist = ["item1", "item2", "[...]"];
我正在搜索列表中的每个字符串,我需要能够搜索“…”

编辑:


现在我有一个新问题。三个句点正好是unicode字符8230,在搜索中找不到它。除了三个“…”之外,可以找到任何其他句点序列。您需要使用反斜杠转义字符

let str = "som.e ra...ndom s.tring..";
console.log(str.match(/\.{2,}/g));
其中,{2,}表示一行中必须至少有2个字符,/g表示应计算整个字符串。请注意。已转义。

例如“\\.\.”或“\\.{2}”

search()对于获取模式第一次出现的索引非常有用。如果找不到模式,则返回-1

string.search('\\.{2}')
使用string.search遍历列表可能类似于

for (let i = 0; i < banlist.length; i++) {
    if (banlist[i].search('\\.{2}') != -1) {
        // Do something
    }
}
for (let i = 0; i < banlist.length; i++) {
    if (banlist[i].match('\\.{2}')) {
        // Do something
    }
}
使用string.match遍历列表将类似于

for (let i = 0; i < banlist.length; i++) {
    if (banlist[i].search('\\.{2}') != -1) {
        // Do something
    }
}
for (let i = 0; i < banlist.length; i++) {
    if (banlist[i].match('\\.{2}')) {
        // Do something
    }
}
for(设i=0;i
正则表达式中的点(
)具有特殊含义。你将不得不逃避它。请尝试
/\.{3}/
是否可以更新您的问题并显示您的尝试,谢谢.string.search([“]{2,})。这与周期的两次或多次匹配。