有效电子邮件地址或有效字母数字检查的正则表达式

时间:2013-03-27 01:12:56

标签: regex

我有一个名为UserName的字段进入我的MVC 3模型。此属性可以是有效的电子邮件地址,也可以是有效的AlphaNumeric。如何编写Regex Express来检查两者(有效电子邮件或有效字母数字)。

我正在使用的有效电子邮件展示

"^[_a-zA-Z0-9\'-]+(\.[_a-zA-Z0-9\'-]+)*@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*\.(([0-9]{1,3})|([a-zA-Z]{2,3})|(name))$"

2 个答案:

答案 0 :(得分:0)

假设您想要匹配的字母数字字符串而不是电子邮件地址只是A-Z0-9,那么您可以使用已经拥有的字符串...

^[_a-zA-Z0-9\'-]+(\.[_a-zA-Z0-9\'-]+)*@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*\.(([0-9]{1,3})|([a-zA-Z]{2,3})|(name))$

...并使用管道将其包装在括号中,以将其指示为可选组...

^([_a-zA-Z0-9\'-]+(\.[_a-zA-Z0-9\'-]+)*@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*\.(([0-9]{1,3})|([a-zA-Z]{2,3})|(name))|[a-zA-Z0-9]+)$

这似乎是一个过于简单化的解决方案,给你迄今为止所完成的工作,这让我想知道是否有一些问题?

答案 1 :(得分:0)

如果你想要字母数字(必须包含单个alpha和单个数字)试试这个

(?=[0-9a-zA-Z]*[a-zA-Z][0-9a-zA-Z]*)(?=[0-9a-zA-Z]*[0-9][0-9a-zA-Z]*)(^[0-9a-zA-Z]+$)