Remy Sharp's jQuery tag suggestion plugin的當前實現僅檢查標籤開頭的匹配項。例如,輸入「Photoshop」將不會返回名爲「Adobe Photoshop」的標籤。如何使用依賴變量的模式執行Javascript匹配?
默認情況下,搜索區分大小寫。我稍微修改了它修剪多餘的空間和忽略大小寫:
for (i = 0; i < tagsToSearch.length; i++) {
if (tagsToSearch[i].toLowerCase().indexOf(jQuery.trim(currentTag.tag.toLowerCase())) === 0) {
matches.push(tagsToSearch[i]);
}
}
我試圖做的就是再次修改這能夠返回「Adobe Photoshop的」,當用戶鍵入「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]);
}
}
什麼是執行以這種方式正則表達式搜索正確的語法?