2

メールアドレスを検証するために、オンラインのどこかでこの単純な正規表現 (おそらく完璧ではないことはわかっています) を見つけました。

/^(?:\w+\.?)*\w+@(?:\w+\.)+\w+$/

問題は、この正規表現が次のケースを許可しないことです:

myname@test-domain.com
my-name@test-domain.com

何か案は?

ps。私はjavascript内でこの正規表現を使用しています。

4

1 に答える 1

5

単にハイフンを追加したい場合は、正規表現を次のように変更できます。

/^(?:\w+[\-\.])*\w+@(?:\w+[\-\.])*\w+\.\w+$/

アンダースコアなどの他の特殊文字を追加するには、それらを最初の2番目ではない)角かっこのペアに入れるだけです。つまり、に変更[\-\.][\-\._]ます。

この質問とその回答もご覧ください

于 2013-03-13T15:43:59.190 に答える