正则表达式
转载时请记得标明源地址:http://my.oschina.net/lijindou/blog 正则表达式其实很简单,刚开始我以为还要加什么工具类,或者还要加其他的什么的,其实都是自己吓自己,下面是代码,这个代码是匹配中国手机号码的: package zhengze; import Java.util.regex.Matcher; public class zhengze { public static void main(String[] args) { /* * 移动:134、135、136、137、138、139、150、151、157(TD)、158、159、187、188 * 联通:130、131、132、152、155、156、185、186 电信:133、153、180、189、(1349卫通) * 总结起来就是第一位必定为1,第二位必定为3或5或8,其他位置的可以为0-9 */ /*匹配纯数字的正则表达式*/ String z1 = "[0-9]+([0-9]+)?"; //匹配只有四位的纯数字 String z2 = "^(d{4})"; String s = "手机号码"; // z 是匹配手机号码的正则表达式 String z = "[1][358]d{9}";// "[1]"代表第1位为数字1,"[358]"代表第二位可以为3、5、8中的一个,"d{9}"代表后面是可以是0~9的数字,有9位。 boolean b = s.matches(z);//这句就是进行正则匹配 //这句是在控制台打印 System.out.println("手机号码的格式是否正确:" + b); } } 2016/06/30补充(备注:发现有177的手机号) //这两天用忽然间发现有177********电信手机号,我晕~ //这样的手机号码,我去~要来改改正则了
// "[1]"代表第1位为数字1,"[3578]"代表第二位可以为3、5、7、8中的一个,"d{9}"代表后面是可以是0~9的数字,有9位。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |