在网看到不少关于检查Email地址的正则表达式,如:1.“\\w+@(\\w+.)+[a-z]{2,3}”, 2."\\w+@(\\w+\\.)+[a-z]{2,3}"之类,表达式1对于如下正字符串23423asdfasdf@sdfa.mms.cn匹配的结果为23423asdfasdf@sdfa.mms.cn,而表达式2对myemail@126.com则是无法配置正确配置的,可见以上表达式不能很好的检测邮件地址的有效性
本人写了一个能正确检测国内常见的邮箱地址的正则表达式:主要体表在邮箱地址的后缀上:
如: .com .cn .net .com.cn .net.cn .tv .mobi .info .cc .......等等
注:本此表达已在java环境下经过测试并能正确的检查邮件地址的有效性,喜欢的话,拿去用.......
如下:
[a-zA-Z_0-9]{1,}[@][a-zA-Z_0-9.]{1,}(([.][Cc]{1}[Oo]{1}[Mm]{1})|([.][Nn]{1}[Ee]{1}[Tt]{1})|([.][Oo]{1}[Rr]{1}[Gg]{1})|([.][Mm]{1}[Oo]{1}[Bb]{1}[Ii]{1})|([.][MM]{1}[Ee]{1})|([.][Cc]{1}[Cc]{1})|([.][Bb]{1}[Ii]{1}[Zz]{1})|([.][Tt]{1}[Vv]{1})|([.][Hh]{1}[Kk]{1})|([.][Ii]{1}[Nn]{1}[Ff]{1}[Oo]{1})){1,2}([.][Cc]{1}[Nn]{1}){0,1}$
也可用于javascript
/[a-zA-Z_0-9]{1,}[@][a-zA-Z_0-9.]{1,}(([.][Cc]{1}[Oo]{1}[Mm]{1})|([.][Nn]{1}[Ee]{1}[Tt]{1})|([.][Oo]{1}[Rr]{1}[Gg]{1})|([.][Mm]{1}[Oo]{1}[Bb]{1}[Ii]{1})|([.][MM]{1}[Ee]{1})|([.][Cc]{1}[Cc]{1})|([.][Bb]{1}[Ii]{1}[Zz]{1})|([.][Tt]{1}[Vv]{1})|([.][Hh]{1}[Kk]{1})|([.][Ii]{1}[Nn]{1}[Ff]{1}[Oo]{1})){1,2}([.][Cc]{1}[Nn]{1}){0,1}$/