前几天刚学了正则表达式,真是犀利,现在来JE回顾回顾。
[color=red]具体的语法到处都有就不贴在这里了,下面的链接有更加详细的说明[url]http://www.gznc.edu.cn/yxsz/jjglxy/book/Java_api/java/util/regex/Pattern.html[/url][/color]
[color=red]几个应用的例子分析:[/color]
[color=brown]1 手机号码匹配 [/color]
只支持3大运营商的手机号段
^ $ 是行开始和结束的符号
这个共分为两大部分 (13[0-9])|(15[^4])|(18[0,5-9]) 和 \d{8}
(13[0-9])|(15[^4])|(18[0,5-9])是电话号码前3位的控制
13[0-9] 表示130到139的3位数
15[^4,\D] 表示除了154的15号段
18[0,5-9] 表示180 和185-189
\\d{8}是后8位数字的控制
[color=brown]2 电话号码匹配 [/color]
(\d{2,4}[-_-—]?)? 表示2到4位的数字后面接-_-—中的一个 或者一个也不接,更 或者前面的所有都没有
\d{3,8}([-_-—]?\d{3,8})? 表示3到8位的数字后面接-_-—中的一个或者不接,后面再接3到8位的数字 更或者 第一部分的3到8位数字后面什么都不接
^0?1[35]\d{9}$ 表示 0或者没有 后面接13或者15 再接9位数字
[color=brown]3 非负正数 [/color]
简单就不分析
[color=brown]4 整数 [/color]
简单不分析
[color=brown]5 非负小数 [/color]
简单不分析
[color=brown]6 Email地址 [/color]
一个或者多个单词字符 或者- 在这个字符中间可以有.
然后 接个@xxx(.xxx)+ 格式的字符串
[color=brown]7 IP地址 [/color]
不解释
[color=brown]8 中文字符串[/color]
[color=brown]9 正整数 或者正小数[/color]
[color=brown]10 通讯录串[/color]
如:otto/13812345678,中文名字/13812345678,otto_liu/13812345678,13812345678
[color=red]具体的语法到处都有就不贴在这里了,下面的链接有更加详细的说明[url]http://www.gznc.edu.cn/yxsz/jjglxy/book/Java_api/java/util/regex/Pattern.html[/url][/color]
[color=red]几个应用的例子分析:[/color]
[color=brown]1 手机号码匹配 [/color]
^((13[0-9])|(15[^4])|(18[0,5-9]))\d{8}$
只支持3大运营商的手机号段
^ $ 是行开始和结束的符号
这个共分为两大部分 (13[0-9])|(15[^4])|(18[0,5-9]) 和 \d{8}
(13[0-9])|(15[^4])|(18[0,5-9])是电话号码前3位的控制
13[0-9] 表示130到139的3位数
15[^4,\D] 表示除了154的15号段
18[0,5-9] 表示180 和185-189
\\d{8}是后8位数字的控制
[color=brown]2 电话号码匹配 [/color]
(^(\d{2,4}[-_-—]?)?\d{3,8}([-_-—]?\d{3,8})?([-_-—]?\d{1,7})?$)|(^0?1[35]\d{9}$)
(\d{2,4}[-_-—]?)? 表示2到4位的数字后面接-_-—中的一个 或者一个也不接,更 或者前面的所有都没有
\d{3,8}([-_-—]?\d{3,8})? 表示3到8位的数字后面接-_-—中的一个或者不接,后面再接3到8位的数字 更或者 第一部分的3到8位数字后面什么都不接
^0?1[35]\d{9}$ 表示 0或者没有 后面接13或者15 再接9位数字
[color=brown]3 非负正数 [/color]
^\d+$
简单就不分析
[color=brown]4 整数 [/color]
^-?\d+$
简单不分析
[color=brown]5 非负小数 [/color]
^\d+(\.\d+)?$
简单不分析
[color=brown]6 Email地址 [/color]
^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$
一个或者多个单词字符 或者- 在这个字符中间可以有.
然后 接个@xxx(.xxx)+ 格式的字符串
[color=brown]7 IP地址 [/color]
2[0-4]\d|25[0-5]|[01]?\d\d?)\.){3}(2[0-4]\d|25[0-5]|[01]?\d\d?)
不解释
[color=brown]8 中文字符串[/color]
[\u4e00-\u9fa5]*
[color=brown]9 正整数 或者正小数[/color]
^([1-9][0-9]*)|0(\.\d+)?)$
[color=brown]10 通讯录串[/color]
如:otto/13812345678,中文名字/13812345678,otto_liu/13812345678,13812345678
^((([\u4e00-\u9fa5[\d]_-[\w][\S]]+)/)?[\d]{11}[,,])*((([\u4e00-\u9fa5[\d]_-[\w][\S]]+)/)?[\d]{11})$