-5

私は正規表現が本当に苦手です。.ca で終わる電子メールのみを受け入れる Java 正規表現を構築するのを手伝ってくれる人はいますか?

私は次のようなことを試しました

^[_A-Za-z0-9-\\+]+(\\.[_A-Za-z0-9-]+)*
      @[A-Za-z0-9-]+(\\.[A-Za-z0-9]+)*(\\.ca$;

ありがとう

4

2 に答える 2

1

釣り方を教えるという精神で...これらはすべてあなたの挑戦の問題に直接関係しており、あなたの改善に役立つかもしれません.

  • あなたの正規表現コードに見られる傾向の1つは、.を使用してリテラルにするためにエスケープしていることです\\.。二重エスケープすることで、リテラル スラッシュの後に 1 文字のワイルドカードが必要であることを示しています。ですから、\. 他の特殊文字についてもこれを行っているのを見ているは​​ずです。
  • これらの特殊文字は、このようにクラス形式で記述する方が簡単な場合があります[.]。これは、リテラル ドットも意味し、エスケープを使用しません。
  • 文字クラスの特殊文字をエスケープする必要はありません。私はあなたがこれをしたと思います\\+
  • [A-Za-z]次のように簡単に書くことができます[A-z]
  • [0-9]次のように書くことができます[\d]
  • [_A-z0-9]次のように書くことができます[\w]
  • 締めくくりが足りない)

すぐに始めるには、これでうまくいくはずです:

([\w-\.]+)@((?:[\w]+\.)+)(ca)
于 2013-05-05T04:54:57.767 に答える
0

これを試すことができます:

([\w-\.]+)@((?:[\w]+\.)+)(ca)
于 2013-05-05T04:44:11.853 に答える