[英]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.