我有一个名为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))$"
答案 0 :(得分:0)
假设您想要匹配的字母数字字符串而不是电子邮件地址只是A-Z
和0-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]+$)