1

正規表現でメールアドレスをフィルタリングする:私は正規表現に不慣れで、誰かが助けてくれることを望んでいました。

次の形式のメールアドレス文字列をパターンマッチングしようとしています。

FirstName.LastName@gmail.com

「@」文字の前にピリオドがあり、「@」文字の後の文字がgmail.comと一致することを確認したい

4

6 に答える 6

4

ドットの前後にいくつかの記号が必要なので、提案し.+\..+@gmail\.comます。

.+記号(。)が1回以上表示されることを意味します(+)
\.はドット記号を意味します。の特別な意味を抑制するためにバックスラッシュでスクリーニングされ、正確に一致する必要があります.
@gmailcom

正規表現の基本構文リファレンスも参照してください。

編集:アカウント名のGmailルールでは、ラテン文字、数字、ドットのみが許可されているため、より適切な正規表現は
[a-zA-Z0-9]+\.[a-zA-Z0-9]+@gmail\.com

于 2011-05-02T19:29:03.707 に答える
2

有効なメールアドレスを確認してください

^(?:(?!.*?[.]{2})[a-zA-Z0-9](?:[a-zA-Z0-9.+!%-]{1,64}|)|\"[a-zA-Z0-9.+!% -]{1,64}\")@[a-zA-Z0-9][a-zA-Z0-9.-]+(.[a-z]{2,}|.[0-9]{1,})$

施行された規則:

  • 英数字で始まる必要があります
  • 英数字と@._-%charのみを持つことができます
  • 2つの連続を持つことはできません。引用符で囲まれた文字列を除く
  • @の前のcharは、英数字と._-%のみで、引用符で囲まれた文字列を除きます。
  • 中央に@が必要です
  • 少なくとも1つ必要です。ドメイン部分で
  • ダブルを持つことはできません-ドメイン部分で
  • ドメイン部分には英数字と.-charのみを含めることができます
  • 2文字以上の有効な拡張子で終了する必要があります
  • サポートIPアドレス(test@1.1.1.1)
  • 引用符で囲まれたユーザー名のサポート
于 2018-06-18T16:41:05.140 に答える
0

要件はかなり具体的であるため、正規表現も必要ありません。使用している言語はわかりませんが、ほとんどの場合、分割の実行@とのチェックをサポートし.ます。Pythonの場合:

name, _, domain = email.partition('@')
if '.' in name and domain == 'gmail.com':
    # valid
于 2011-05-02T19:13:34.183 に答える
0

必要な正規表現フレーバーの種類を教えてくれませんが、この例はそれらのほとんどに適合します。

.*\..*@gmail.com
于 2011-05-02T19:13:49.890 に答える
0

.が任意の文字であるUnixスタイルを想定します。.*\..*@gmail\.com

編集:.ドメイン内でエスケープ

于 2011-05-02T19:13:13.073 に答える
0

次の正規表現を使用して、電子メールアドレスを検証しました。また、これに関してC#言語の小さなコードスニペットを追加しました。

正規表現- "^[a-zA-Z0-9]{3,20} @ gmail.com $"

コード:-

static void Main(string[] args)
        {
            Console.WriteLine("Enter Your Text ");
            string input = Console.ReadLine();
            Console.WriteLine("The Text that you have entered is :" + input);
            Console.ReadLine();

            string pattern = "^[a-zA-Z0-9]{3,20}@gmail.com$";
            Regex regex = new Regex(pattern);
            bool results = regex.IsMatch(input);
            Console.WriteLine(results.ToString());
            Console.ReadLine();
        }

∂øøµ $∂å¥!@ gmail.comなどのメールもチェックされ、ここではfalseとして表示されます。;-)

于 2020-12-22T18:18:27.447 に答える