【发布时间】:2014-03-02 01:19:23
【问题描述】:
我会直接开始,这就是我所拥有的:
var SResults = [];
function ActivateSearch(s) {
SResults = [];
for (var key in Products){
if ((' '+Products[key]['n']).search(new RegExp('\\b(('+s+')|('+s+')[s])\\b', 'gi')) > 0) {
SResults.push(key);
}
}
}
ActivateSearch('trampoline cover');
通过这个功能,我尝试在 Products[key]['n'] 中查找单词或短语,这是某种标题 ex。 “蹦床防雨罩 6 英尺长,外加附加功能”。
现在它具有非常基本的工作原理,即在提到的标题中查找搜索短语的每个单词。
问题:
如果有标题蹦床雨罩,并且搜索词是:蹦床罩 - 没有匹配项。
问题:
如何更改正则表达式以匹配上述结果?
【问题讨论】:
-
您需要一个带有可以理解自然语言的搜索引擎的后端。否则,您需要针对不同的输入自定义正则表达式。
-
是的,为了解决问题,我将正则表达式更改为: new RegExp('\\b(('+s+')|('+s+')[s])\\b', 'gi')
标签: javascript regex search