gpt4 book ai didi

Javascript:通配符正则表达式搜索

转载 作者:行者123 更新时间:2023-11-30 08:58:11 25 4
gpt4 key购买 nike

我需要使用通配符正则表达式过滤字符串数组:

// my search key
var myKeyword = 'bar';

// my search list
var strings = ['foo', 'bar', 'foobar', 'barfoo', 'hello', 'java', 'script', 'javascript'];

// my results
var results = [];

// the regexp, I don't understand
var regex = new RegExp(\*/, myKeyword);

// the for loop
for (var i = 0; i < strings.length; i++) {
if (regex.test(strings[i]) {
results.push(strings[i]);
}
}

console.log(results); // prints ['bar', 'foobar', 'barfoo']

那么我该如何修复正则表达式呢?

最佳答案

如果你想用正则表达式来做,像这样做:

var regex = new RegExp(keyword);
// if you want it case-insensitive:
var regex = new RegExp(keyword, 'i');

如果关键字包含任何特定于正则表达式的字符,例如 [*,这将中断。如果这对您来说是个问题,您需要编写一个函数来转义这些字符。

但是,通过使用 strings[i].indexOf(keyword) != -1 来测试关键字是否在字符串中,您可以更轻松地解决问题 - 无需使用正则表达式完全没有。

关于Javascript:通配符正则表达式搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11612522/

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