关于Email地址验证的正则表达式
iamlaosong文
网上提供的Email地址验证的正则表达式是:^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$
表达式中比较难以理解的就是其中的[-+.],尤其是其中的加号,因为正则表达式中“+”是有特殊含义的,表示前面的规则至少匹配一次。但中括号中的“+”就是其本身的含义,[-+.]的意思就是其中减号、加号和点任意一个都可以作为用户名中分隔符,([-+.]\w+)*中的“*”表示这一部分可有可无,可以重复多次。按照这个验证规则,Email地址中用户名部分如abc.def、abc.def.ghk、abc-def.ghk、abc.def+ghk-qwe都应该是合法的,虽然日常生活中很少这样用,尤其是没有见过用户名中含有“+”号的。
E-mail 地址格式标准有两种:
一种是常规标准,诞生于1982年,也是现在绝大多数服务器使用的标准,只能使用字母、数字、下划线。
另一种标准是在2008年发布的,主要有三个核心标准:RFC5335、RFC5336和RFC5337。其作用旨在实现邮件地址的国际化。国际化系列标准的推出使世界各国人民用上自己母语的电子邮件地址成为可能。各种有形字符(@除外)都可以使用。
按照日常的Email地址情况,这个验证规则完全可以严格一点,把那些奇葩的地址滤掉:
^\w+([-.]\w+)*@\w+([-.]\w+)*\.\w{2,6}$
关于Email地址验证的正则表达式相关推荐
- RegExp表达式 Email地址验证
要做更精确地匹配,可以用[]表示范围,比如: [0-9a-zA-Z\_]可以匹配一个数字.字母或者下划线: [0-9a-zA-Z\_]+可以匹配至少由一个数字.字母或者下划线组成的字符串,比如'a10 ...
- Java学习笔记——Email地址验证
案例分析: 输入一个Email地址,然后使用正则表达式验证该Email地址是否正确. 代码如下 package demo;public class JavaAPIDemo {public static ...
- 用PHP校验EMAIL地址的正确方法
由John Klensin编写的互联网任务工程组(IETF)文档RFC 3696 "应用程序技术检查和命名转换"给出了多个真实有效的EMAIL地址,但很不幸的是这些地址却被大多数P ...
- 【廖雪峰】写一个验证Email地址的正则表达式
最近在看廖雪峰的Python啦,已经看到正则了,突然想起来可以在博客记录一下下~ 无论对错都请多多指教,谢谢~ 要求: 廖雪峰Python教程链接 请尝试写一个验证Email地址的正则表达式.版本一应 ...
- 输入一个Email地址,然后使用正则表达式验证该Email地址是否正确。
输入一个Email地址,然后使用正则表达式验证该Email地址是否正确 . import java.util.regex.Pattern; import java.util.regex.Matcher ...
- 请尝试写一个验证Email地址的正则表达式。版本一应该可以验证出类似的Email —— python学习笔记
Python正则表达式的练习 1.1 请尝试写一个验证Email地址的正则表达式.版本一应该可以验证出类似的Email someone@gmail.com bill.gates@microsoft.c ...
- js正则表达式 验证手机号,email地址和邮政编码等等等等。。。
//手机号码的验证(13开头18开头和158,159开头,共11位) var re; var ss=document.getElementById('textbox3').val; re= /^(13 ...
- js正则表达式 验证手机号,email地址和邮政编码
转载自:http://hi.baidu.com/648385674/item/bac6792c843b1ef050fd878c //手机号码的验证(13开头18开头和158,159开头,共11位) v ...
- [python] 使用正则表达式验证email地址是否有效
假定email地址的必要形式为: xxxxxx@xxxxxxxx.xxxxxx 其他一概不作检查,对应的RE应为:[^@]+@[^@]+\.[^@]+ 验证脚本: import re p = re.c ...
最新文章
- Rhel6-mpich2 hpc集群配置文档
- JDK1.10+scala环境的搭建之linux环境(centos6.9)
- 解析Hibernate的结构
- 微博如何发订阅消息_微信订阅号或将大变天,微博8年前就这么干了...
- f3arra1n3.4.1版本_GDB 10.1版本发布了
- 2018.09.17-2018.09.23
- 30首优秀奥运歌曲获奖作品出炉
- python requests text content_python 3 关于requests库的 text / content /json
- sigar监控API的测试用例
- 股票模拟交易软件之手机炒股软件排行榜
- 关系数据库与对象数据库
- 服务器搭建织梦cms系统,零基础使用织梦cms搭建自己的网站「织梦建站」
- rx7900xt和gtx3090ti差距 rx7900xt和gtx3090ti哪个好
- 联想拯救者笔记本(R720、y7000、y7000p)安装ubuntu无法使用无线网卡
- 使用ShareSDK进行第三方(登录,分享)
- R包vegan的冗余分析(RDA)
- 依次输入十个数 输出最大的数 C语言实现
- 直连路由、静态路由、动态路由
- 好男人,你能坚持60秒吗?
- LeetCode 第 224 场周赛 5655. Largest Submatrix With Rearrangements【动态规划】⭐⭐⭐⭐⭐