2016-12-26 3 views
0

与えられたテキストから省略する必要がある配列内にいくつかのストップワードがあります。停止語が[a、an、the、the、the、and、or、to]の正規表現は、/\b(?:a|an|the|is|the|of|and|or|to|of|as|for)\b/igであると仮定します。動的に正規表現を作成する - Javascript

停止語は異なる場合があります。だから私は

var s = 'a|an|the|is|the|of|and|or|to|of|as|for' var reg = new RegExp('/\b(?:' + s + ')\b/ig','i')

しかし、私は働いていないの後上記の方法を次のようにRegExpを使用しようとしました。どこが間違っていますか? https://repl.it/EwqY/7

答えて

4

あなたがRexExpコンストラクタを使用する場合、あなたは/区切り文字が含まれていない、と修飾子が別の引数に行く:ここ

は、いくつかのコードだ

var reg = new RegExp('\\b(?:' + s + ')\\b','ig') 

ます。また、バックスラッシュをエスケープする必要がありますなぜならそれらは文字列エスケープ接頭辞でもあるからです。

+1

また、文字列リテラルの反発防止文字をエスケープしてください。 –

+1

@DenysSéguretありがとう、それを修正しました。 – Barmar