一个通用的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);
}
bgp.to在对日本东京的独立服务器进行6.5折终身优惠促销,低至$120/月;对新加坡独立服务器进行7.5折终身优惠促销,低至$93/月。所有服务器都是直连国内,速度上面相比欧洲、美国有明显的优势,特别适合建站、远程办公等多种用途。官方网站:https://www.bgp.to/dedicated.html主打日本(东京、大阪)、新加坡、香港(CN)、洛杉矶(US)的服务器业务!日本服务器CPU...
华为云怎么样?华为云用在线的方式将华为30多年在ICT基础设施领域的技术积累和产品解决方案开放给客户,致力于提供稳定可靠、安全可信、可持续创新的云服务,做智能世界的“黑土地”,推进实现“用得起、用得好、用得放心”的普惠AI。华为云作为底座,为华为全栈全场景AI战略提供强大的算力平台和更易用的开发平台。本次年终聚惠618活动相当给力,1核2G内存1m云耀云服务器仅88元/年起,送主机安全基础版套餐,...
最近发现一个比较怪异的事情,在访问和登录大部分国外主机商和域名商的时候都需要二次验证。常见的就是需要我们勾选判断是不是真人。以及比如在刚才要访问Namecheap检查前几天送给网友域名的账户域名是否转出的,再次登录网站的时候又需要人机验证。这里有看到"Attention Required"的提示。我们只能手工选择按钮,然后根据验证码进行选择合适的标记。这次我要选择的是船的标识,每次需要选择三个,一...