原始:/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/


  • 在线匹配网站 ​​​
  • 删开始和结束符(网站通过):\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*

这是vs2003中正则表达式编辑器生成的电子邮件的正则表达式,它的意思是:

/w+ 必须以一个a-z,A-Z,0-9或_这些字符中的一个开头。

([-+.]\w+)* 的意思是:允许0个或是多个-+.\w或-+.\w+这样的字符,也就是说,到这里为止,邮件的地址可以是:

a-a   a+aa  a.aaa 这种作为开头。

接下来@就不用解释了,邮件必须的东西。

\w+意思同上。

([-.]\w+)*意思是允许出现0个或是多个-.加一个字符或是多个字符的情况。

\.意思就是.就像\\就是指\一样。

\w+([-.]\w+)*意思和上面的一样。

根据这个正则表达式,邮箱可以是如下这些格式:

com/">​wwwkgdiwss@163.com​​   ​​www+kgdiwss@163.com​

com/">​www.kgdiwss@163.com​​   ​​www-kgdiwss@163.com​


减号用在字符集“[…]”里表示一组字符,如:

“[3-5]” —— 表示3到5中的任意一个字符,所以“iphone[4-7]>”表示匹配 iphone4 或者 iphone5 或者 iphone6 或者 iphone7

“[x-z]” —— 表示匹配 x 或者 y 或者 z

如果没有用在字符集“[…]”里,就是普通的字符,即减号,如:

“apple-[1-3]”—— 表示匹配“apple-1”、“apple-2”或者“apple-3” 1

即使在字符集“[…]”里,但并非连续字符段,减号也失去了特殊含义,如:

“apple[-1]” —— 表示匹配“apple-”或者“apple1”