使用正则表达式验证电子邮件地址。

这个问题在这里已经有了答案:

  • 如何使用正则表达式验证电子邮件地址? 74个答案

  • 不要打扰,有很多方法来验证电子邮件地址。 自从有国际化域名以来,在列出顶级域名是没有意义的。 另一方面,如果您想将您的接受范围限制为只有选定的域名,那么您就处于正确的轨道上。 关于你的正则表达式:

  • 你必须逃避点,所以他们成为文字: . 几乎匹配任何东西, . 火柴 ”。”
  • 在域部分,您使用[w-] (没有点),这将不适用于“@ mail.example.com”。
  • 你可能应该看看重复的答案。
  • 本文向您展示了一个可怕的但符合RFC 5322的正则表达式,但也告诉您不要使用它。
  • 我喜欢这个: /^.+@.+...+$/它测试任何东西,一个符号,任何数量的任何东西,一个点,任何东西,和任何数量的任何东西。 这足以检查输入的电子邮件地址的一般格式。 很有可能,用户会输入无法防止的输入错误,如输入john@hotmil.com 。 他不会收到你的邮件,但你已经成功验证了他的地址格式。

    回复您的评论:如果您使用(?:…)而不是(…)使用非捕获组,则不会捕获匹配。 例如,所有电子邮件地址都有符号,您不需要捕获它。 因此, (john)(?:@)(example.com)将提供名称和服务器,而不是at符号。 非捕获组是一种正则表达式,它们与电子邮件验证无关。

    链接地址: http://www.djcxy.com/p/92739.html

    上一篇: validate email addresses using a regex.

    下一篇: C# email regex with no space or ! character allowed