2016-09-01 5 views
0

検索文字列をRegExp内に配置する方法を知っていますか? 私はVARを使うのですか、値「雨が」VAR「検索」に格納されていたがあれば、私は 変数内の正規表現の検索語句

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 

を書くことができ、私の検索語が「雨」である場合としましょうか?

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; 
    } 
}); 

答えて

1

あなたは、文字列からカスタムの正規表現を構築したいときは、区切り文字/やオプションが含まれていません。関数コンストラクタの次の形式を使用します。

var regex = new RegExp(search, "i"); 

これをsearchメソッドで使用します。

+0

ありがとうございました!それを感謝する! – user21