Java:大陆号码,香港号码,澳门号码,正则匹配-2018-11-03
做java服务端开发还是移动端开发经常遇到手机号码校验问题,当然有很多轮子可以选。
但使用简单正则匹配的方式还是有的。
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import java.util.regex.PatternSyntaxException;public class FormatCheckUtil {/**
* 大陆号码或香港号码均可
*/
public static boolean isPhoneLegal(String str) throws PatternSyntaxException {return isChinaPhoneLegal(str) || isHKPhoneLegal(str);
}/**
* 大陆手机号码11位数,匹配格式:前三位固定格式+后8位任意数 此方法中前三位格式有: 13+任意数 15+除4的任意数 18+除1和4的任意数
* 17+除9的任意数 147
*/
public static boolean isChinaPhoneLegal(String str) throws PatternSyntaxException {String regExp = "^((13[0-9])|(15[^4])|(18[0,2,3,5-9])|(17[0-8])|(147))\\d{8}$";
Pattern p = Pattern.compile(regExp);
Matcher m = p.matcher(str);
return m.matches();
}/**
* 香港手机号码8位数,5|6|8|9开头+7位任意数
*/
public static boolean isHKPhoneLegal(String str) throws PatternSyntaxException {String regExp = "^(5|6|8|9)\\d{7}$";
Pattern p = Pattern.compile(regExp);
Matcher m = p.matcher(str);
return m.matches();
}
}
Java:大陆号码,香港号码,澳门号码,正则匹配-2018-11-03相关推荐
- js正则匹配身份证号码
js正则匹配身份证号码 2020/12/14 // 匹配大陆身份证号码 function IsID(ids) {let reg = /^\d{6}(18|19|20)?\d{2}(0[1-9]|1[0 ...
- java生日验证_Java验证身份证号码是否有效
用java代码验证身份证号码是否有效 身份证号码验证 详细代码如下: MatcherUtils.java public class MatcherUtils { /*** * 验证是不是有效的身份证号 ...
- java 蓝桥杯算法提高 身份证号码升级(题解)
试题 算法提高 身份证号码升级 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 从1999年10月1日开始,公民身份证号码由15位数字增至18位.(18位身份证号码简介).升级方法为 ...
- java 蓝桥杯算法训练 筛选号码(题解)
试题 算法训练 筛选号码 资源限制 时间限制:1.0s 内存限制:512.0MB 问题描述 有n个人围成一圈,顺序排号(编号为1到n).从第1个人开始报数(从1到3报数),凡报到3的人退出圈子.从下一 ...
- java如何获取手机号码归属地_在java中如何根据手机号查询号码归属地
在java中如何根据手机号查询号码归属地 1.maven项目中配置 com.googlecode.libphonenumber geocoder 2.15 com.googlecode.libphon ...
- PHP 手机靓号规则、正则匹配、号码查询
最近有个项目关于手机靓号及用户搜索想要关键数字的手机号 1. 手机靓号规则匹配 - PHP正则匹配 2. 关键字位搜索 - MYSQL LIKE 使用 靓号规则如下 AAAB.AAA.ABC.ABCD ...
- 身份证号码的严格校验(非正则)
文章目录 前言 序言 一.身份证号码介绍 1.身份证号码组成 2.省份证号码中的名词解释 1.区域代码(地址码) 2.生日 3.顺序码 4.校验码 总结 二.校验码计算 1.公式拆解 2.运算 三.实 ...
- 身份证号码正则匹配(正则表达式)
正则匹配身份证号 分为18位和15位 ,首先写正则之前我们先明白身份证号的结构 18位 地区: ([1-6][1-9]|50)\d{4} // 补充重庆地区50 年的前两位: (18|19|20) 1 ...
- 在号码池取连续号码的算法
最近项目中需要提供一个选号接口,在一批号码中检索出一批连续的号码供选则. 实现算法如下: import java.util.*; public class SerialNum { /** * 在号 ...
最新文章
- Spring Cloud Gateway 整合阿里 Sentinel网关限流实战
- 谷歌抽屉_Google(最终)会杀死导航抽屉吗?
- Java IO实战操作(一)
- windows 使用 tricks
- jquery mini下载_【福利】iPhone 12 Pro Maxamp;mini预售开始啦!
- 中科大EPC课程查询自动选课
- matlab的输出(命令窗口、fprint函数、disp函数)
- unity 安装踩坑
- 账套恢复失败 文件服务器,用友T3恢复账套时提示:备份信息文件无效,恢复失败?...
- 这两款好用的识别图片文字的软件app值得你们收藏
- Business Transaction Events BTE 增强
- 零基础学习3D游戏建模要美术基础吗
- python 判断txt文件的编码格式
- flowable实战(二)flowable流程模型管理接口
- JMM内存模型 多线程三大特性
- 文件隐藏服务器版本信息,隐藏版本信息
- 【Java案例】购书系统(超详细)
- 2013年将成为传统店铺的末日?
- Github 上 annie 下载神器的安装及使用教程
- 文件太大无法复制到U盘