黑马程序员技术交流社区
标题:
正则表达式的问题
[打印本页]
作者:
mr_jack
时间:
2014-3-27 15:12
标题:
正则表达式的问题
本帖最后由 mr_jack 于 2014-3-27 16:59 编辑
@"^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$" 这些字符什么意思呢
作者:
threederek
时间:
2014-3-27 15:17
验证电子邮件的正则表达式
将邮件格式分为两个部分,@前面为用户名,@后面为域名。那么用户名的格式约束为:
1. 开头和结尾必须由字母(包括大小写)或下划线组成;
2. 可以包含减号(-),加号(+),点号(.),单引号(‘)
域名的格式约束为:
1. 开头和结尾必须由字母(包括大小写)或下划线组成;
2. 可以包含减号(-),点号(.);
3. 中间的点号必须出现至少一次
作者:
白夜行
时间:
2014-3-27 16:23
本帖最后由 白夜行 于 2014-3-27 16:30 编辑
"^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$" 中
前面的 ^ 和后面的 $ 代表字符串的开始和结束,意思是要匹配整个字符串的格式;
\w+ 表示可以是一个或多个字母,数字,下划线,+ 表示1个或多个;
([-+.]\w+)* 是一个组, 后面加个 * 意思是前面组中的内容匹配时可以是0个,也可以是多个;
括号里的内容: [-+.] 匹配一个字符,可以是 - + . 其中的一个; \w+上面说了;
@ 就是匹配它本身;
\w+([-.]\w+)* 这段类似前面的,意思是一个或多个\w,后边的 [-.]\w+ 可有可无 ;
\. 这个是匹配 .
所以整个意思就是,@前面格式:以字母/数字/下换线开头,并且可以用 -+. 分隔;@后面的格式:以字母/数字/下划线开头,可以以-.分隔,不过必须有一个分隔符 .
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2