时间:2021-07-01 10:21:17 帮助过:17人阅读
^[_a-z0-9-]+(.[_a-z0-9-]+)*@[a-z0-9-]+(.[a-z0-9-]+)*(.[a-z]{2,3})$ |
这个正则表达式只允许下划线(_)和连字符(-),数字和大小写字母。即使在此之前先对字母做了大小写转换,也会拒绝那些包含斜线(/),等号(=),惊叹号(!)和百分号(%)的地址。这个表达式也要求最高级的域组件至少要有2个或3个字符,因此也会拒绝有效的域,如.museum。
另一个受人喜欢的正则表达式是:
^[a-zA-Z0-9_.-]+@[a-zA-Z0-9-]+.[a-zA-Z0-9-.]+$ |
这个正则表达式也会拒绝前面段落给出的有效示例地址,它优雅地解决了大写字母问题,并且当最高级域名只有2个或3个字符也不会报错了,但它又允许无效的域名,如example..com。
清单1显示了一个来自PHP Dev Shed(
http://www.bkjia.com/PHPjc/446749.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/446749.htmlTechArticle由John Klensin编写的互联网任务工程组(IETF)文档RFC 3696 “应用程序技术检查和命名转换”给出了多个真实有效的EMAIL地址,但很不幸的是这...