一个通用的Java正则匹配工具检查邮箱名、 电话号码、用户密码、邮政编码等合法性的
工具类
一个通用的Java正则匹配工具检查邮箱名、电话号码、用户密码、邮政编码等合法性的工具类
一个通用且常用的Java正则匹配工具用以检查邮箱名、 电话号码、用户密码、邮政编码等合法性。import java.util.regex.Matcher;import java.util.regex.Pattern;public clas s RegexUtils {
/**
*验证Email
*@param email email地址格式 zhang@gmail.c om zhang@xxx.c om.cn xxx代表邮件服务商
*@return验证成功返回true验证失败返回fals epublic static boolean checkEmail(String email) {
String regex=\\w+@\\w+\\.[a-z]+(\\.[a-z]+)?return Pattern.matc hes(regex,email);
/**
*验证身份证号码
*@param idCard居民身份证号码15位或18位最后一位可能是数字或字母
*@return验证成功返回true验证失败返回fals epublic static boolean checkIdCard(String idCard)
String regex=[1-9]\\d{13,16}[a-zA-Z0-9]{1}return Pattern.matches(regex,idCard);
/**
*验证手机号码支持国际格式 +86135xxxx. .. 中国内地 +00852137xxxx. .. 中国香港
*@param mobile移动、联通、 电信运营商的号码段
*移动的号段 134(0-8)、 135、 136、 137、 138、 139、 147 预计用于TD上网卡
*、 150、 151、 152、 157 TD专用、 158、 159、 187 未启用、 188 TD专用
*联通的号段 130、 131、 132、 155、 156 世界风专用、 185 未启用、 186 3g
*电信的号段 133、 153、 180 未启用、 189
*@return验证成功返回true验证失败返回fals epublic static boolean checkMobile(String mobile) {
String regex=(\\+\\d+)?1[3458]\\d{9}$return Pattern.matches(regex,mobile);
/**
*验证固定电话号码
*@param phone电话号码格式 国家地区电话代码+区号城市代码 +电话号码如 +8602085588447
*国家地区 代码标识电话号码的国家地区的标准国家地区代码。它包含从0到9的一位或多位数字
*数字之后是空格分隔的国家地区代码。
*区号城市代码这可能包含一个或多个从0到9的数字地区或城市代码放在圆括号——
*对不使用地区或城市代码的国家地区则省略该组件。
*电话号码这包含从0到9的一个或多个数字
*@return验证成功返回true验证失败返回fals e
public static boolean checkPhone(String phone) {
String regex=(\\+\\d+)?(\\d{3,4}\\-?)?\\d{7,8}$return Pattern.matches(regex,phone);
/**
*验证整数正整数和负整数
*@param digit一位或多位0-9之间的整数
*@return验证成功返回true验证失败返回fals epublic static boolean checkDigit(String digit) {
String regex=\\-?[1-9]\\d+return Pattern.matc hes(regex,digit);
/**
*验证整数和浮点数正负整数和正负浮点数
*@param decimals一位或多位0-9之间的浮点数如 1.23 233.30
*@return验证成功返回true验证失败返回fals epublic static boolean checkDecimals(String decimals) {
String regex=\\-?[1-9]\\d+(\\.\\d+)?return Pattern.matc hes(regex,dec imals);
/**
*验证空白字符
*@param blankSpace空白字符包括空格、 \t、 \n、 \r、 \f、 \x0B
*@return验证成功返回true验证失败返回fals epublic static boolean checkBlankSpace(String blankSpace) {
String regex=\\s+return Pattern.matc hes(regex,b*验证日期年月日
*@param birthday 日期格式 1992-09-03或1992.09.03
*@return验证成功返回true验证失败返回fals epublic static boolean checkBirthday(String birthday) {
String regex=[1-9]{4}([-./])\\d{1,2}\\1\\d{1,2}return Pattern.matc hes(regex,birthday);
/**
*验证URL地址
* @param url 格式 http://blog.c sdn.net:80/xyang81/article/details/7705960? 或http://w ww.c s dn.net:80
*@return验证成功返回true验证失败返回fals epublic static boolean checkURL(String url) {
String regex =(http s?://(w{3}\\.)?)?\\w+\\.\\w+(\\.[a-zA-Z]+)*(:\\d{1,5})?(/\\w*)*(\\??(.+=.*)?( .+=.*)?)?return Pattern.matc hes(regex,url);
/**
* *获取网址URL的一级域名
*http://detail.tmall.c om/item.htm?spm=a230r.1.10.44.1 xpD SH id=15453106243 *@return验证成功返回true验证失败返回fals epublic static boolean checkPostcode(String postcode) {
String regex=[1-9]\\d{5}return Pattern.matc hes(regex,postc ode);
/**
*匹配IP地址(简单匹配格式如 192.168.1.1 127.0.0.1 没有匹配IP段的大小)
*@param ipAddress IPv4标准地址
*@return验证成功返回true验证失败返回fals epublic static boolean checkIpAddress(String ipAddress) {
String regex =[1-9](\\d{1,2})?\\.(0|([1-9](\\d{1,2})?))\\.(0|([1-9](\\d{1,2})?))\\.(0|([1-9](\\d{1,2})?))return Pattern.matches(regex, ipAddres s);
//是否包含.号public static boolean checkContainsDot(String username) {return us ername.c ontains( .
//是否包含连词符public static boolean checkContainsHyphen(String username) {return us ername.c ontains( -
//密码长度6-20public static boolean checkUserPasswordLength(String pwd) {return pw d.length() 5 pw d.length()public static boolean isValidUserName(String un)
String regex=([A-Z0-9a-z-]|[\\u4e00-\\u9fa5])+return Pattern.matc hes(regex,un);
}
特网云特网云为您提供高速、稳定、安全、弹性的云计算服务计算、存储、监控、安全,完善的云产品满足您的一切所需,深耕云计算领域10余年;我们拥有前沿的核心技术,始终致力于为政府机构、企业组织和个人开发者提供稳定、安全、可靠、高性价比的云计算产品与服务。官方网站:https://www.56dr.com/ 10年老品牌 值得信赖 有需要的请联系======================特网云美国高防御...
美国特价云服务器 2核4G 19.9元杭州王小玉网络科技有限公司成立于2020是拥有IDC ISP资质的正规公司,这次推荐的美国云服务器也是商家主打产品,有点在于稳定 速度 数据安全。企业级数据安全保障,支持异地灾备,数据安全系数达到了100%安全级别,是国内唯一一家美国云服务器拥有这个安全级别的商家。E5 2696v2x2 2核 4G内存 20G系统盘 10G数据盘 20M带宽 100G流量 1...
Hostio是一家成立于2006年的国外主机商,提供基于KVM架构的VPS主机,AMD EPYC CPU,NVMe硬盘,1-10Gbps带宽,最低月付5欧元起。商家采用自己的网络AS208258,宿主机采用2 x AMD Epyc 7452 32C/64T 2.3Ghz CPU,16*32GB内存,4个Samsung PM983 NVMe SSD,提供IPv4+IPv6。下面列出几款主机配置信息。...