2011-12-16 25 views
0

ユーザ入力を検証したいと思います。 ユーザーはすべての文字、数字、および "_"または " - "を書くことができます。正規表現(正規表現):/ Wハイフン(javascript)

私が検証するために

myString.search(/\W/) != -1 

を使用しています。 それは私が望むすべてのもので動作しますが、 " - "では動作しません。 "no wordcharacter"は検索できますが、ハイフン " - "は許可されていますか?

答えて

3

ソリューションはmyString.search(/[^\w-]/) != -1

+0

範囲のインジケータは+とする必要があります - 私は間違っていない場合は、それは私のために働くと彼はそれをエスケープすることができます。 – luastoned

+1

文字クラスの中で@luastonedされています。 AからZまでのすべての文字にマッチする 'A-Z '。@ T.J。最後のCrowderも問題ありません。 – stema

+0

それは働いています、ありがとう:-) (あなたは7分で回答を受け入れることができます) –

0

これは動作するはずです:

myString.search(/[\W-]/) != -1 

それは基本的に任意の「ノー単語文字」とハイフンを含む文字クラスに対してマッチングます。

+1

する必要があります彼は、上記の正規表現は – luastoned

+0

が@luastoned許可望んでいますか? http://regexr.com?2vgb9 – fge

+1

@fgeはそのことについてあなたが確信していることを可能にする、ハイフンが – luastoned