浅谈利用正则表达式检验常见输入

王朝java/jsp·作者佚名  2006-01-31
窄屏简体版  字體: |||超大  

1. 邮政编码

boolean checkPostcode(){

Pattern p=Pattern.compile("[0-9]{6}");

Matcher m=p.matcher(inputStr);

if (!m.matches()){

System.out.println("****邮政编码格式不符!*****");

return false;

}

return true;

}

java.util.regex中有两个类:Pattern和Matcher。

Pattern为模板,Matcher为被匹配者。

打个比方,你心中已经有了你将来的另一半将会是怎样的想法(只是打个比方,无意招惹有了另一半的同志们),这个想法就是模板Pattern,现在你遇见了一位,她就是Matcher,于是你会用你的Pattern去和她比较(matches()),如果匹配成功,那么就有可能有一段佳话。

关于上面的程序不做详细解释,可以参考Java的API中Pattern和Matcher类的说明。

只介绍一下“[0-9]{6}”的意思。

[]中括号指定允许匹配的字符,恰如您心目中她要:温柔,端庄,聪慧,但是一个[]只能允许匹配单个字符。0-9表示0到9之间的任意数字,同样A-Z就表示A到Z之间的任意字母,连接符-的意思相信你已经掌握了。{}大括号表示匹配次数,这里就表示匹配6次,即必须有6个数字。

2.EMAIL

boolean checkEmail(){

Pattern p=Pattern.compile("[0-9A-Za-z]+@([0-9a-zA-Z]+.){1,2}(com|net|cn|com.cn)");

Matcher m=p.matcher(inputStr);

if(!m.matches()){

System.out.println("****电子邮件格式不符!*****");

return false;

}

return true;

}

这里就不多做解释,之给出匹配的表达式:

“[0-9A-Za-z]+@([0-9a-zA-Z]+.){1,2}(com|net|cn|com.cn)”。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航