电子邮件正则表达式不起作用

时间:2015-03-26 13:02:18

标签: regex

我发现了这个正则表达式:

^[^\s()<>@,;:\/]+@\w[\w\.-]+\.[a-z]{2,}$

但我有2个问题:

  1. 我无法输入单个字母的域名 - 例如:a@a.me
  2. 我可以输入无效的斜线\
  3. 你能帮忙解决这个问题吗?

2 个答案:

答案 0 :(得分:1)

  1. \w[\w\.-]+读取“alphanum char,后跟一个或多个 alphanumchar,dot或dash”。因此,您需要\w[\w\.-]*“alphanum char后跟零或更多 alphanumchar,dot或dash”

  2. [^\s()<>@,;:\/]列出了所有不允许的字符:\s()<>@,;:/\/实际上是转义的/)。因此,您需要添加(转义)反斜杠:[^\s()<>@,;:\/\\]

答案 1 :(得分:0)

^[^\s()<>@,;:\/\\]+@\w([\w\.-]+)?\.[a-z]{2,}$