使用正则表达式验证电子邮件地址。
这个问题在这里已经有了答案:
不要打扰,有很多方法来验证电子邮件地址。 自从有国际化域名以来,在列出顶级域名是没有意义的。 另一方面,如果您想将您的接受范围限制为只有选定的域名,那么您就处于正确的轨道上。 关于你的正则表达式:
.
几乎匹配任何东西, .
火柴 ”。” [w-]
(没有点),这将不适用于“@ mail.example.com”。 我喜欢这个: /^.+@.+...+$/
它测试任何东西,一个符号,任何数量的任何东西,一个点,任何东西,和任何数量的任何东西。 这足以检查输入的电子邮件地址的一般格式。 很有可能,用户会输入无法防止的输入错误,如输入john@hotmil.com
。 他不会收到你的邮件,但你已经成功验证了他的地址格式。
回复您的评论:如果您使用(?:…)
而不是(…)
使用非捕获组,则不会捕获匹配。 例如,所有电子邮件地址都有符号,您不需要捕获它。 因此, (john)(?:@)(example.com)
将提供名称和服务器,而不是at符号。 非捕获组是一种正则表达式,它们与电子邮件验证无关。