0

これらの JavaScript 正規表現を 1 つの正規表現に結合したいと思います。これどうやってするの?「|」を使用してみました 文字列の間に演算子がありますが、これは機能しません。

var r1 = new RegExp(id + '\\s*===\\s*TRUE', 'gm');
var r2 = new RegExp(id + '\\s*===\\s*true', 'gm');
var r3 = new RegExp(id + '\\s*===\\s*FALSE', 'gm');
var r4 = new RegExp(id + '\\s*===\\s*false', 'gm');
var r5 = new RegExp(id + '\\s*!==\\s*TRUE', 'gm');
var r6 = new RegExp(id + '\\s*!==\\s*true', 'gm');
var r7 = new RegExp(id + '\\s*!==\\s*FALSE', 'gm');
var r8 = new RegExp(id + '\\s*!==\\s*false', 'gm');
4

2 に答える 2

1

これを試して:

var r = new RegExp(id+"\\s*[!=]==\\s*(?:true|false)","gi");

mここでは適用されないため、修飾子を削除し、iすべてのケース オプションを処理するために修飾子を追加しました。

于 2013-01-26T05:21:03.273 に答える
0

この特定のケースでは

new RegExp(id + '\\s*[!=]==\\s*(?:TRUE|true|false|FALSE)', 'gm')

トリックを行う必要があります。

一般的なケースでは、文字列を '|' で結合します。動作するはずです。

「fAlSe」や同様の文字列も受け入れたい場合は、@ Kolinkの回答の方が適しています。

于 2013-01-26T05:22:32.290 に答える