Avatar ·

如何在 JavaScript 的正则表达式中使用变量?

大家好!我是 JavaScript 新手,正在尝试编写一个简单的搜索函数。我有一个字符串数组,想找出所有包含特定单词的元素。要搜索的单词作为函数参数传入。 问题是我不知道如何将变量插入到正则表达式中。当我这样写: ```javascript function searchItems(array, searchTerm) { const regex = /searchTerm/gi; return array.filter(item => regex.test(item)); } ``` ...它会直接搜索字符串 "searchTerm",而不是变量的值。我试过用 `new RegExp()`,但结果还是不对。这是我当前的代码: ```javascript function searchItems(array, searchTerm) { const regex = new RegExp(searchTerm, 'gi'); return array.filter(item => regex.test(item)); } const fruits = ['Apple', 'Banana', 'Avocado', 'Grape']; console.log(searchItems(fruits, 'ap')); // 期望:['Apple', 'Avocado'] ``` 它似乎能工作,但我注意到一个奇怪的问题