变量中的正则表达式搜索词
regex search term in variable
你知道我如何将搜索字符串放入 RegExp 中吗?
假设我的搜索词是 'Ame',那么我可以写
v.name.search(new RegExp(/Ame/i)). //It works
var search = $("#search-query").val();
v.name.search(new RegExp('/'+search+'/i' //It doesn't work
但是,如果值 'Ame' 存储在变量 'search' 中,我该如何使用变量?
var search = $("#search-query").val();
if($("#search-query").val().length <1){
$scope.hiddenError = true;
return;
}
$.each(json.products, function(i, v) {
if (v.name.search(new RegExp('/'+search+'/i')) != -1) { //doesn't work
$scope.recentGame.push({ label:v.name, value: v.type, link: v.url });
return;
}
});
当您想要从字符串构建自定义正则表达式时,不包括分隔符 /
或选项。您使用以下形式的函数构造函数:
var regex = new RegExp(search, "i");
并在 search
方法中使用它。
你知道我如何将搜索字符串放入 RegExp 中吗? 假设我的搜索词是 'Ame',那么我可以写
v.name.search(new RegExp(/Ame/i)). //It works
var search = $("#search-query").val();
v.name.search(new RegExp('/'+search+'/i' //It doesn't work
但是,如果值 'Ame' 存储在变量 'search' 中,我该如何使用变量?
var search = $("#search-query").val();
if($("#search-query").val().length <1){
$scope.hiddenError = true;
return;
}
$.each(json.products, function(i, v) {
if (v.name.search(new RegExp('/'+search+'/i')) != -1) { //doesn't work
$scope.recentGame.push({ label:v.name, value: v.type, link: v.url });
return;
}
});
当您想要从字符串构建自定义正则表达式时,不包括分隔符 /
或选项。您使用以下形式的函数构造函数:
var regex = new RegExp(search, "i");
并在 search
方法中使用它。