C#电子邮件正则表达式没有空间或! 字符允许
所以我有这段代码,我需要帮助的是:
我需要它不允许空格(例如user 123@hotmail.com
=无效)
我需要它来允许除了!
字符。
我需要的域(后.
),如果超过2个字符长,必须通过我提供的文件进行验证。
国家代码是。 AERO,BIZ,COM,COOP,EDU,GOV,INFO,INT,MIL,MUSEUM,NAME,NET,ORG,PRO
当前代码。
private void validateBtn_Click(object sender, EventArgs e)
{
Regex email = new Regex(@"[a-zA-Z0-9]{1,20}@[a-zA-Z0-9]{1,20}.[a-zA-Z]{2,3}$");
if (!email.IsMatch(emailTxt.Text))
{
validLbl.Text = "Email invalid";
}
else
{
validLbl.Text = "Email Valid";
}
}
任何帮助都是极好的! :D我只是找不到任何资源来帮助我。
这是用于检查电子邮件字段有效性的完整且详尽的正则表达式。 我很确定,这足以满足所有与电子邮件地址相关的验证。
([a-z0-9][-a-z0-9_+.]*[a-z0-9])@([a-z0-9][-a-z0-9.]*[a-z0-9].(aero|AERO|biz|BIZ|com|COM|coop|COOP|edu|EDU|gov|GOV|info|INFO|int|INT|mil|MIL|museum|MUSUEM|name|NAME|net|NET|org|ORG|pro|PRO)|([0-9]{1,3}.{3}[0-9]{1,3}))
如果您需要验证的域地址有任何更改,则可以相应地修改该正则表达式。 在这种情况下,你的代码应该是这样的:
private void validateBtn_Click(object sender, EventArgs e)
{
Regex validEmailExp = new Regex(@"([a-z0-9][-a-z0-9_+.]*[a-z0-9])@([a-z0-9][-a-z0-9.]*[a-z0-9].(aero|AERO|biz|BIZ|com|COM|coop|COOP|edu|EDU|gov|GOV|info|INFO|int|INT|mil|MIL|museum|MUSUEM|name|NAME|net|NET|org|ORG|pro|PRO)|([0-9]{1,3}.{3}[0-9]{1,3}))");
if (emailExp.IsMatch(emailTxt.Text.Trim()))
{
validLbl.Text = emailTxt.Text + " is valid";
}
else
{
validLbl.Text = emailTxt.Text + " is invalid";
}
}
希望这可以帮助!!!
您无法使用正则表达式完全验证电子邮件。 最好你可以接近。 请参阅此主题以获得更完整的讨论。
链接地址: http://www.djcxy.com/p/92737.html