我正在尝试使用Regex为我的C#MVC模型创建验证规则。
[RegularExpression(@"(\w[-._+\w]*\w@\w{1,}.\w{2,3})", ErrorMessage = "* Email Address: Please enter a valid Email Address.")]
public virtual string EmailAddress { get; set; }
此正则表达式适用于除单字母域之外的所有内容。
这是一个实时预览,如何为此用例创建一个正则表达式?
答案 0 :(得分:3)
根据你的例子,这可行:
[\w+.]+@\w+\.[\w.]+
<强>匹配强>
<强>非匹配:强>
实际上,最后,你真正关心的是@
和.
。过去,just send it!
答案 1 :(得分:0)
我希望这是你正在寻找的榜样:
<强>
([\w-\.+]+)@((?:[\w]+\.)+)([a-zA-Z]{2,4})
强>
我得到了所有匹配的东西,而不是最后两个匹配。
答案 2 :(得分:0)
廉价且讨厌没有正则表达式:
try
{
new MailAddress(emailAddress);
}
catch (FormatException)
{
// not valid
}