About Javascript:正则表达式验证电子邮件,@符号之前只允许这两个特殊符号.,-

regex to validate emails which allows only these two special symbols .,- before @ symbol

本问题已经有最佳答案,请猛点这里访问。

我使用下面的regex进行电子邮件验证。

1
var reg = /^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;

如何验证以下两个电子邮件ID

  • 你好!%#%^邮箱:[email protected]
  • 地狱世界@-gmail.com
  • 可用电子邮件ID:

  • 您好[email protected]
  • 您好,[email protected]
  • 无效的电子邮件ID:

  • 你好!γ% @ gmail
  • 地狱世界@-gmail.com
  • 在@gmail.com之前不允许使用特殊字符

    下面是我的javascript代码

    1
    2
    3
    4
    5
    var re = /^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;

    if (!re.test($(this).val())) {
        errmsg.push($(this).attr('placeholder') + ' is invalid');
    }


    您可以尝试下面的regex来验证电子邮件,它只允许在@符号之前使用这两个特殊符号.-

    1
    ^[^<>()[\]\\,;:\%#^\s@"$&!@]+@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z0-9]+\.)+[a-zA-Z]{2,}))$

    演示