0

http://www.regular-expressions.info/email.htmlからの情報に基づいて、電子メール形式の検証に C# でこの正規表現を使用しています。

Regex.IsMatch("test@gmail.com", 
              @"^[A-Z0-9'._%+-]+@(?:[A-Z0-9-]+\.)+[A-Z]{2,4}$",RegexOptions.IgnoreCase);

また、メール全体の長さが 5 ~ 254 文字であることを確認したいと思います。長さの条件を満たすには、この正規表現をどのように変更する必要がありますか? C# で文字列の長さを明示的にチェックしたくありません。

4

2 に答える 2

0

長さのチェックを個別に行う方がおそらくクリーンですが、式の先頭に非キャプチャ先読みを追加することで、長さの制約を組み込むことができます。

^(?=.{5,254})[A-Z0-9'._%+-]+@(?:[A-Z0-9-]+\.)+[A-Z]{2,4}$
于 2013-02-28T01:24:19.197 に答える
0

そのような制限を設けないことをお勧めします。本当に正規表現が必要な場合。paxdiabloが言ったように、SOには多くの質問が存在します。正規表現でのメール検証

^.{1,254}$

http://rick.measham.id.au/paste/explain.pl?regex=%5E.%7B1%2C150%7D%24

于 2013-02-27T06:18:29.190 に答える