◎◎◎◎◎正则表达式验证会员EMAIL注册信息◎◎◎◎◎

时间:2022-09-24 08:38:40
有时看到CSDN里大家讨论正则,写法总是不同,效果也不尽相同。

在网上看到很多各式各样的会员注册信息验证的正则表达式,譬如,有篇《正则表达式入门》的文章里写到:

Email验证的正则是:(\w)+[@]{1}(\w)+[.]{1,3}(\w)+

还有一篇是这样写的:
\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*

再加一篇:
/^([A-Za-z0-9])(\w)+@(\w)+(\.)(com|com\.cn|net|cn|net\.cn|org|biz|info|gov|gov\.cn|edu|edu\.cn)/

这三篇似乎都有缺陷。
第一篇中:[.]{1,3}这样可以匹配"."1至3次吗?我怎么感觉是连续的如"..."可以匹配,但".a.b.c"匹配不了呢?
第二篇中:如果是以_开头的邮箱可以通过验证?第一篇也有这个问题。
第三篇中:原意是想让最后只匹配com、com.cn等后缀形式,但好像可以重复匹配多次?我只让它匹配一次怎么写呢?

我拿一个邮箱为例子,可能是终极样式的:brothercat.csdn@mail.yahoo.com.cn(应该会有这样的邮箱吧^_^)

还请兄弟们赐教一下Email的终极验证,谢谢

11 个解决方案

#1


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

#2


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

#3


如果我要像第二篇中的只匹配com、com.cn等后缀形式形式呢?

#4


上面两位的都有一个问题:
如果我邮箱输入的是brothercat.csdn@mail.yahoo.com.cn.com.cn一样可以通过。
也就是对"."没有加限制啦。

#5


终极验证 -- 给用户提供的E-Mail发一封激活信,如果不激活则不让登陆。

#6


mrwang2000(王先生):老大,你这不又扯歪了嘛 ^_^

我只是就正则说一下而已嘛,是正则的终极验证。呵呵

#7


没有了吗?

#8


#9


见过中文邮箱没? 上边的好像都不行吧,没有什么终极验证,最好的办法是
让用户留下邮箱,然后给这个地址发个邮件过去,收到才算通过.哈哈

#10


^_^ 阿梅的话简直是“一语道醒梦中人”呀。

不过...
还是...

请问:让用户留下邮箱,然后给这个地址发个邮件过去,收到才算通过 怎么搞?以前从来没想过这个问题。呵呵,淘宝上好像用的是这样的验证方式吧?^_^

#11


邮箱格式形式多样,即使通过验证也不表示该邮箱是否存在,何必如此费心?

#1


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

#2


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

#3


如果我要像第二篇中的只匹配com、com.cn等后缀形式形式呢?

#4


上面两位的都有一个问题:
如果我邮箱输入的是brothercat.csdn@mail.yahoo.com.cn.com.cn一样可以通过。
也就是对"."没有加限制啦。

#5


终极验证 -- 给用户提供的E-Mail发一封激活信,如果不激活则不让登陆。

#6


mrwang2000(王先生):老大,你这不又扯歪了嘛 ^_^

我只是就正则说一下而已嘛,是正则的终极验证。呵呵

#7


没有了吗?

#8


#9


见过中文邮箱没? 上边的好像都不行吧,没有什么终极验证,最好的办法是
让用户留下邮箱,然后给这个地址发个邮件过去,收到才算通过.哈哈

#10


^_^ 阿梅的话简直是“一语道醒梦中人”呀。

不过...
还是...

请问:让用户留下邮箱,然后给这个地址发个邮件过去,收到才算通过 怎么搞?以前从来没想过这个问题。呵呵,淘宝上好像用的是这样的验证方式吧?^_^

#11


邮箱格式形式多样,即使通过验证也不表示该邮箱是否存在,何必如此费心?