| 订阅 | 在线投稿
分享
 
 
 

jdk1.4的正则表达式使用介绍

来源:互联网  宽屏版  评论
2008-05-31 11:17:46

sun终于在sdk正式支持正则表达的判定--Java1.4的util里增加了个regex包。

(正则的咚咚,Unix用户都应该比较熟悉。)

大家不用到处找第三方的库或是自己写字符串的判定逻辑了。真算是我们的福音。

只需要将注重力放在业务规则上就可以了。复用和正确性都会有很大的提高,逻辑也简单易懂,轻易维护。

在日常的字符串操作方面,会带来很大的方便,比如判定电子邮件地址,电话号码,身份证号码,文字过滤等等。

下面我做了一个简单的邮件地址格式判定的测试(可以在main中直接运行打印),大家可以先了解一下:

/*自定义电子邮件地址的商业逻辑--3到16字符长的用户名,后接@符号,再是用点分隔的域名。

下面的mailstr正则表达式里面的\w是预定义的,等于[a-zA-Z_0-9]。还有很多,在后面的表达式说明中有说明,意思是这是一个可以为数字和大小写字母以及下划线的字符。[x]表示一个字符,但[]里面可以加多个字符,他们之间是或关系。{}是个数量的界定,这里{3,16}表示至少3个,最多16个,+,*都是表示重复任意次数,但是+表示至少一次,()用于多个字符的分组。*/

String mailstr = "(\\w[.-]){3,16}@((\\w-)+.)*(\\w)+" ;

//新旧身份证号的表达式(没有作日期有效性的检查)

String idstr ="(\\d){15}(\\d){18}(\\d){17}[xX]";

String mstr = "qiaohua2000@pa18.com";

Pattern pn = Pattern.compile( mailstr ) ;

boolean b = pn.matcher( mstr ).matches() ;

System.out.println("regular:"+mailstr);

System.out.println("matcher:"+mstr) ;

System.out.println("result:"+b) ;

大家可以试试不同的输入组合,看看是否符合逻辑?

具体用法参见下面网址的

Summary of regular-eXPression constrUCts Construct Matches 部分

URL:

http://java.sun.com/j2se/1.4/docs/api/java/util/regex/Pattern.Html

 
  sun终于在sdk正式支持正则表达的判定--Java1.4的util里增加了个regex包。   (正则的咚咚,Unix用户都应该比较熟悉。)   大家不用到处找第三方的库或是自己写字符串的判定逻辑了。真算是我们的福音。   只需要将注重力放在业务规则上就可以了。复用和正确性都会有很大的提高,逻辑也简单易懂,轻易维护。   在日常的字符串操作方面,会带来很大的方便,比如判定电子邮件地址,电话号码,身份证号码,文字过滤等等。   下面我做了一个简单的邮件地址格式判定的测试(可以在main中直接运行打印),大家可以先了解一下:      /*自定义电子邮件地址的商业逻辑--3到16字符长的用户名,后接@符号,再是用点分隔的域名。   下面的mailstr正则表达式里面的\w是预定义的,等于[a-zA-Z_0-9]。还有很多,在后面的表达式说明中有说明,意思是这是一个可以为数字和大小写字母以及下划线的字符。[x]表示一个字符,但[]里面可以加多个字符,他们之间是或关系。{}是个数量的界定,这里{3,16}表示至少3个,最多16个,+,*都是表示重复任意次数,但是+表示至少一次,()用于多个字符的分组。*/    String mailstr = "(\\w[.-]){3,16}@((\\w-)+.)*(\\w)+" ;   //新旧身份证号的表达式(没有作日期有效性的检查)    String idstr ="(\\d){15}(\\d){18}(\\d){17}[xX]";    String mstr = "qiaohua2000@pa18.com";    Pattern pn = Pattern.compile( mailstr ) ;    boolean b = pn.matcher( mstr ).matches() ;    System.out.println("regular:"+mailstr);    System.out.println("matcher:"+mstr) ;    System.out.println("result:"+b) ;      大家可以试试不同的输入组合,看看是否符合逻辑?      具体用法参见下面网址的   Summary of regular-eXPression constrUCts Construct Matches 部分   URL:   http://java.sun.com/j2se/1.4/docs/api/java/util/regex/Pattern.Html
󰈣󰈤
 
 
 
>>返回首页<<
 
 热帖排行
 
 
 
静静地坐在废墟上,四周的荒凉一望无际,忽然觉得,凄凉也很美
©2005- 王朝网络 版权所有