簡體   English   中英

正則表達式,用於匹配字符串中的單詞

[英]Regex for Matching Words within a String

這是我到目前為止的內容,但僅與目標字符串的開頭匹配:

var enteredText = new RegExp("^" + $.ui.autocomplete.escapeRegex(term), "i");

$.ui.autocomplete.filter = function(array, term) {
    var enteredText = new RegExp("^" + $.ui.autocomplete.escapeRegex(term), "i");

    return $.grep(array, function(value) {
        return enteredText.test(value.label || value.value || value);
    });
};

注意:$ .ui.autocomplete.filter允許我更改jQuery UI如何使用自動完成功能搜索術語。

“術語”是輸入到輸入框中的文本。

“ $ .grep”將自動完成“數組”中的每個元素插入“ function(value)”

編輯1:我正在尋找一個正則表達式來搜索字符串中每個單詞的開頭。 例如,“一個”與“我喜歡安迪”匹配,而與“我喜歡糖果”不匹配。

這是我到目前為止的內容,但僅與目標字符串的開頭匹配:

解決這個問題

嘗試這個:

刪除^因為您不想只在字符串的開頭。

var enteredText = new RegExp($.ui.autocomplete.escapeRegex(term), "i");

為此:

編輯1:我正在尋找一個正則表達式來搜索字符串中每個單詞的開頭。 例如,“一個”與“我喜歡安迪”匹配,而與“我喜歡糖果”不匹配。

既然您說了想匹配的內容,就必須在正則表達式的前面加上.+? 喜歡

var enteredText = new RegExp(".*"+$.ui.autocomplete.escapeRegex(term)+".*", "i");

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM