0

正規表現一致の文でパターンを見つけようとしています..以下のコードresultには文字列が含まれており、その中に単語appleが存在するかどうかを確認しています。

    var patt = /apple/gi;
    var newResult = patt.test(result);

使用されているケースから上記のコードを見つけました..しかし、私は複数の値を持っているかどうか疑問に思っていました.文字列の結果でそれをチェックしたいのですが、値var arr=["apple", "orange"] var patt=/arr[0]/gi を持つ配列が機能しないとしましょう..そのシナリオ??

4

2 に答える 2

2

複数のエントリをチェックするには、OR 演算子を使用できます。

var patt = /apple|orange/gi;
var newResult = patt.test(result);

変数がある場合は、以下を実行できます。IF (!) キーはもちろん正規表現セーフです (つまり、正規表現構文で意味を持つ文字は含まれません)。

var key = "apple";
var patt = new RegExp(key, 'gi');
var newResult = patt.test(result);

この場合でも、indexOf を使用することもできます。

var key = "apple";
var newResult = result.indexOf(key) > -1;
于 2013-03-08T09:53:37.287 に答える
0

正規表現に文字列を使用するには、正規表現コンストラクターを使用して正規表現を作成する必要があります。

var pattern = "apple|orange";
var regex = new RegExp(pattern, "g");    // g is for global match

詳細については、https ://developer.mozilla.org/en-US/docs/JavaScript/Guide/Regular_Expressions をご覧ください。

于 2013-03-08T09:59:42.560 に答える