C#电子邮件正则表达式没有空格或!允许字符

本文关键字:许字符 字符 正则表达式 电子邮件 空格 | 更新日期: 2023-09-27 17:58:47

所以我有这段代码,我需要帮助的是:

我需要它不允许空格(例如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我找不到任何资源来帮助我。

C#电子邮件正则表达式没有空格或!允许字符

这是一个完整而详尽的正则表达式,用于检查电子邮件字段的有效性。我确信这将足以满足您所有与电子邮件地址相关的验证。

([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}))

如果域地址中有任何需要验证的更改,则可以相应地修改regex。在这种情况下,您的代码应该是这样的:

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";
    }
}

希望这能有所帮助!!!

您无法使用正则表达式完全验证电子邮件。你最多可以接近。有关更完整的讨论,请参阅此线程。