7

次の式を「new Regexp()」スタイルに変換しようとしています:

http://jsfiddle.net/HDWBZ/

var Wyrazenie = /\btest[a-z]*/g;

私は本当に混乱していて、それを修正する方法がわかりません。以下は私がやったことですが、明らかにうまくいきません。

var Wyraznie = new RegExp("\btest[a-z]*","g");

また、「テスト」の代わりに変数を使用するとどうなるかという質問がありますか?

4

1 に答える 1

9

代わりにこれを使用する必要があります...

new RegExp("\\btest[a-z]*", "g");

... JavaScript パーサーが対応する文字列リテラルを処理するときに、 1 つの\b(スラッシュなし) 文字に補間されます。解決策は、スラッシュ自体をエスケープすることです。

デモ: http://jsfiddle.net/HDWBZ/1/

于 2012-12-19T17:39:33.823 に答える