Java正则验证
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Java正则验证,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1553字,纯文字阅读大概需要3分钟。
内容图文
1 /** 2 * 验证手机号. 3 * 4 * @param phone the phone 5 * @return true, if successful 6 */ 7 public static boolean isPhone(String phone){ 8 if (StringUtils.isBlank(phone)){ 9 return false ; 10 } 11 String regex = "^[1][3,4,5,8][0-9]{9}$"; 12 Pattern p = Pattern.compile(regex); 13 Matcher m = p.matcher(phone); 14return m.matches(); 15 }
1 /** 2 * 验证身份证号是否合法(只验证18位). 3 * 4 * @param idCard the id card 5 * @return true, if is id card 6 */ 7 public static boolean isIdCard(String idCard){ 8 String regex = "(((1[1-5])|(2[1-3])|(3[1-7])|(4[1-6])|(5[0-4])|(6[1-5])|71|(8[12])|91)\\d{4}((19\\d{2}(0[13-9]|1[012])(0[1-9]|[12]\\d|30))|(19\\d{2}(0[13578]|1[02])31)|(19\\d{2}02(0[1-9]|1\\d|2[0-8]))|(19([13579][26]|[2468][048]|0[48])0229))(\\d{3})(\\d|X|x))"; 9int[] factorArray = newint[]{7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2}; 10 String[] parityBit = new String[]{"1", "0", "X", "9", "8", "7", "6", "5", "4", "3", "2"}; 11 String[] idArray = new String[18]; 12int intStrLen = idCard.length(); 13 String idStr = idCard; 14int sum = 0; 1516//正则验证身份证格式是否正确17 Pattern pattern = Pattern.compile(regex); 18 Matcher matcher = pattern.matcher(idCard); 19if(!matcher.matches()){ 20returnfalse; 21 } 2223//验证身份证号算法是否合法24for(int i = 0; i < intStrLen; i ++){ 25 idArray[i] = idStr.charAt(i) + ""; 26if(i < (intStrLen - 1)){ 27 sum += factorArray[i] * Integer.parseInt(idArray[i]); 28 } 29 } 30if(!parityBit[(sum % 11)].equalsIgnoreCase(idArray[intStrLen - 1])){ 31returnfalse; 32 } 33returntrue; 34 }
原文:http://www.cnblogs.com/thierry/p/4959745.html
内容总结
以上是互联网集市为您收集整理的Java正则验证全部内容,希望文章能够帮你解决Java正则验证所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。