Android日记之2012/02/12——Android中正则表达式使用
在项目中我们总会遇到一些字符匹配的时候,最典型的就是验证用户输入的邮箱或者手机号是否符合格式规范。那我们在做这些匹配的时候,可以有两种方式。1、 这是一种笨办法。就是自己根据项目的要求来写一个匹配的类,通过一个字符一个字符来匹配,从而得到自己想要的结果。
2、 还有一种就是使用正则表达式。这是普遍都回通用的方法。Android中使用正则,只要3句话:
Patternpattern = Pattern.compile(reg),reg表示的是正则表达式
Matchermatcher = pattern.matcher(string),string表示的是需要匹配的字符
matcher.matcher(),这边就是直接返回一个boolean值,来表示正确与否
正则表达式用起来挺容易的,但是,正则表达式的书写很是头痛。基本的语法就不讲了,太琐碎了,网上相关的资源也比较多。还有就是正则表达式中的转义字符,我在2011年的12.28号那篇日记中写过了,也就不重复了。
这边就贴点平时常用的一些正则表达式
^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$ //email地址
^+://(\w+(-\w+)*)(\.(\w+(-\w+)*))*(\?\S*)?$ //url
^(d{2}|d{4})-((0({1}))|(1))-((({1}))|(3))$ //年-月-日
^((0({1}))|(1))/((({1}))|(3))/(d{2}|d{4})$//月/日/年
^(+)@(([{1,3}.{1,3}.{1,3}.)|((+.)+))({2,4}|{1,3})(]?)$ //Emil
^((\+?{2,4}\-{3,4}\-)|({3,4}\-))?({7,8})(\-+)?$ //电话号码
^(d{1,2}|1dd|2d|25).(d{1,2}|1dd|2d|25).(d{1,2}|1dd|2d|25).(d{1,2}|1dd|2d|25)$ //IP地址
(^\s*)|(\s*$) // 首尾空格
^{4,15}$// 帐号是否合法(字母开头,允许5-16字节,允许字母数字下划线)
^**$//腾讯QQ号
页:
[1]