package com.test.easycheck;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
/**
* 手机号的校验规则:
* /^((13[0-9])|(14[5,7])|(15[0-3,5-9])|(17[0,3,5-8])|(18[0-9])|166|198|199|(147))\d{8}$/
*
* 邮箱的校验规则:
* /^[a-zA-Z0-9_.-]+@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*\.[a-zA-Z0-9]{2,6}$/
*
*
* 护照号的校验规则:
* /^1[45][0-9]{7}$|(^[P|p|S|s]\d{7}$)|(^[S|s|G|g|E|e]\d{8}$)|(^[Gg|Tt|Ss|Ll|Qq|Dd|Aa|Ff]\d{8}$)|(^[H|h|M|m]\d{8,10}$)/
*
* 文字、英文字母、数字和下划线
* /^[\u0391-\uFFE5\w]+$/,
*
* 二代身份证
* ^[1-9]\\d{5}(18|19|([23]\\d))\\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\\d{3}[0-9Xx]$
*
* 非特殊字符
* [^#]+
*
* 至少一个数字或者字母
* [a-zA-Z0-9]+
*
* 至少一个汉字
* [\u4e00-\\u9fa5]+
*
* 是否为手机号码
* /^1[3|4|5|6|7|8][0-9]{9}$/
*
* 是否全为数字
* /^[0-9]+$/
*
* 是否为邮箱
* /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/
*
* 是否为身份证
* /^(^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$)|(^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])((\d{4})|\d{3}[Xx])$)$/
*
* 是否为Url
* /[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,6}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)/
*
* 是否为IP
* /((2(5[0-5]|[0-4]\d))|[0-1]?\d{1,2})(\.((2(5[0-5]|[0-4]\d))|[0-1]?\d{1,2})){3}/
*/
public class UnifiedVerification {
public static void main(String[] args){
System.out.println(isMobilePhone("17865132151"));
}
private static boolean isMobilePhone(String phoneNumber){
String pa = "^((13[0-9])|(14[5,7])|(15[0-3,5-9])|(17[0,3,5-8])|(18[0-9])|166|198|199|(147))\\d{8}$";
return match(pa,phoneNumber);
}
/**
* @param rex 正则校验规则
* @param str 要校验的字符串
* @return 返回校验结果,若满足校验规则,则返回true,否则返回false
*/
private static boolean match(String rex, String str) {
Pattern pattern = Pattern.compile(rex);
Matcher matcher = pattern.matcher(str);
return matcher.matches();
}
}
更多内容请关注微信公众号“外里科技”
官方公众号 | 外里科技 |
运营公众号 | 英雄赚 |
微信 | wxid_8awklmbh1fzm22 |
1247408032 | |
开源代码 | https://gitee.com/B_T/beimi |