我正在尝试创建一个正则表达式来验证可能有子域也可能没有子域的edu电子邮件。一些学校有类似";example@hms.harvard.edu"而其他学校则有类似";example@stanford.edu&";。
([0-9]|[a-z]|[A-Z])+@([0-9]|[a-z]|[A-Z])+([0-9]|[a-z]|[A-Z]).edu$"
这是我目前拥有的正则表达式,但我并不精通这些表达式。我希望创建一个表达式,用一个域验证电子邮件,用子域验证电子邮件。
如有任何帮助,我们将不胜感激。谢谢
在大多数情况下,/^[-w.]+@[-w.]+.edu$/
应该足够了。这个解决方案的唯一问题是,它也可以接受像hms这样的域。。harvard.edu.
为了防止这种情况,您可以使用以下正则表达式:/^[-w.]+@([-w]+.)*[-w]+.edu$/
编辑:使用\w而不是[0-9a-zA-Z_]
这应该可以完成任务(修改自http://emailregex.com/-在"如何使用正则表达式验证电子邮件地址?"中引用(:
/^(([^<>()[]\.,;:s@"]+(.[^<>()[]\.,;:s@"]+)*)|(".+"))@(([[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}])|(([a-zA-Z-0-9]+.)+edu))$/