一个通用的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);
}
OneTechCloud(易科云)是一家主打CN2等高端线路的VPS主机商家,成立于2019年,提供的产品包括VPS主机和独立服务器租用等,数据中心可选美国洛杉矶、中国香港、日本等,有CN2 GIA线路、AS9929、高防、原生IP等。目前商家针对全场VPS主机提供月付9折,季付8折优惠码,优惠后香港VPS最低季付64元起(≈21.3元/月),美国洛杉矶CN2 GIA线路+20Gbps防御型VPS...
v5net当前对香港和美国机房的走优质BGP+CN2网络的云服务器进行7折终身优惠促销,每个客户进线使用优惠码一次,额外有不限使用次数的终身9折优惠一枚!V5.NET Server提供的都是高端网络线路的机器,特别优化接驳全世界骨干网络,适合远程办公、跨境贸易、网站建设等用途。 官方网站:https://v5.net/cloud.html 7折优惠码:new,仅限新客户,每人仅限使用一次 9...
数脉科技(shuhost)8月促销:香港独立服务器,自营BGP、CN2+BGP、阿里云线路,新客立减400港币/月,老用户按照优惠码减免!香港服务器带宽可选10Mbps、30Mbps、50Mbps、100Mbps带宽,支持中文本Windows、Linux等系统。数脉香港特价阿里云10MbpsCN2,e3-1230v2,16G内存,1T HDD 或 240G SSD,10Mbps带宽,IPv41个,...