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

And*_*sch 5 javascript regex email

我已使用以下正则表达式进行电子邮件验证。

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,}))$/;
Run Code Online (Sandbox Code Playgroud)

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

  1. 你好!%#%^world@gmail.com
  2. helloworld@-gmail.com

有效的电子邮件 ID:

  1. hello-world@gmail.com
  2. hello.world@gmail.com

InVaild 电子邮件 ID:

  1. 你好!#%#@gmail.com
  2. helloworld@-gmail.com

@gmail.com 之前不应允许使用特殊字符

下面是我的 JavaScript 代码

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');
}
Run Code Online (Sandbox Code Playgroud)

Avi*_*Raj 4

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

^[^<>()[\]\\,;:\%#^\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,}))$
Run Code Online (Sandbox Code Playgroud)

演示版