【发布时间】:2010-10-22 08:53:04
【问题描述】:
Remy Sharp's jQuery tag suggestion plugin 的当前实现仅检查标记开头的匹配项。例如,键入“Photoshop”不会返回名为“Adobe Photoshop”的标签。
默认情况下,搜索区分大小写。我稍微修改了它以修剪多余的空格并忽略大小写:
for (i = 0; i < tagsToSearch.length; i++) {
if (tagsToSearch[i].toLowerCase().indexOf(jQuery.trim(currentTag.tag.toLowerCase())) === 0) {
matches.push(tagsToSearch[i]);
}
}
我尝试做的是再次修改它,以便在用户键入“Photoshop”时能够返回“Adobe Photoshop”。我尝试过使用match,但是当模式中存在变量时,我似乎无法让它工作:
for (i = 0; i < tagsToSearch.length; i++) {
var ctag = jQuery.trim(currentTag.tag);
if (tagsToSearch[i].match("/" + ctag + "/i")) { // this never matches, presumably because of the variable 'ctag'
matches.push(tagsToSearch[i]);
}
}
以这种方式执行正则表达式搜索的正确语法是什么?
【问题讨论】:
标签: javascript regex autocomplete match