2010-11-18 26 views
1

内の一致値Iは、キーがURLに存在するかどう天気を確認するために、この式を持っている:JavaScriptの正規表現:文字列

new RegExp('/'+x+'/ig') 

(無関係なコードを削除)

ことは、それが機能していない、あります。私は区切り文字(開始と終了)を使用する必要があると思います。なぜなら、URLには他にも多くのことがありますが、それを行う方法がわからないからです。

どのような考えですか?あなたがnew Regex()を使用する場合

+0

にすることができますurlの例を載せて、出力をどのようにしたいのですか? – Keng

+0

あなたが照合しているURLと照合しようとしているキーのいくつかの例は、あなたの質問をより明確にします。 –

答えて

4

、あなたは2番目のパラメータとして、あなたはRegExpこのよう

2

それを作成するときではないリテラル区切り文字が必要です

new RegExp(x, 'ig') 

注フラグを渡す必要がありますあなたは正規表現のリテラルと文字列を混ぜているようです。

var myExp = new RegExp('[a-z]*') 

それは-Zからの手紙の任意の数、任意の回数だけマッチする:正規表現を書くこと

一つの方法は、このようなものです。 同じことを行う別の方法は、次のようになります:

var myExp = /[a-z]*/ 

またはigは「グローバル」「大文字小文字を無視」と意味さえ

var myExp = /[a-z*]/ig 

だから、それを書いている方法の一つに固執してください。文字列とリテラルを混在させないでください。

編集:

あなたが最初の構文を使用するだけでなく、ケースを無視して、マッチがグローバルに、RegExpオブジェクト・コンストラクタへの2番目の引数として文字列'ig'を渡したい場合は(new RegExp('[a-z]*', 'ig')