做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相关推荐

  1. js正则匹配身份证号码

    js正则匹配身份证号码 2020/12/14 // 匹配大陆身份证号码 function IsID(ids) {let reg = /^\d{6}(18|19|20)?\d{2}(0[1-9]|1[0 ...

  2. java生日验证_Java验证身份证号码是否有效

    用java代码验证身份证号码是否有效 身份证号码验证 详细代码如下: MatcherUtils.java public class MatcherUtils { /*** * 验证是不是有效的身份证号 ...

  3. java 蓝桥杯算法提高 身份证号码升级(题解)

    试题 算法提高 身份证号码升级 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 从1999年10月1日开始,公民身份证号码由15位数字增至18位.(18位身份证号码简介).升级方法为 ...

  4. java 蓝桥杯算法训练 筛选号码(题解)

    试题 算法训练 筛选号码 资源限制 时间限制:1.0s 内存限制:512.0MB 问题描述 有n个人围成一圈,顺序排号(编号为1到n).从第1个人开始报数(从1到3报数),凡报到3的人退出圈子.从下一 ...

  5. java如何获取手机号码归属地_在java中如何根据手机号查询号码归属地

    在java中如何根据手机号查询号码归属地 1.maven项目中配置 com.googlecode.libphonenumber geocoder 2.15 com.googlecode.libphon ...

  6. PHP 手机靓号规则、正则匹配、号码查询

    最近有个项目关于手机靓号及用户搜索想要关键数字的手机号 1. 手机靓号规则匹配 - PHP正则匹配 2. 关键字位搜索 - MYSQL LIKE 使用 靓号规则如下 AAAB.AAA.ABC.ABCD ...

  7. 身份证号码的严格校验(非正则)

    文章目录 前言 序言 一.身份证号码介绍 1.身份证号码组成 2.省份证号码中的名词解释 1.区域代码(地址码) 2.生日 3.顺序码 4.校验码 总结 二.校验码计算 1.公式拆解 2.运算 三.实 ...

  8. 身份证号码正则匹配(正则表达式)

    正则匹配身份证号 分为18位和15位 ,首先写正则之前我们先明白身份证号的结构 18位 地区: ([1-6][1-9]|50)\d{4} // 补充重庆地区50 年的前两位: (18|19|20) 1 ...

  9. 在号码池取连续号码的算法

    最近项目中需要提供一个选号接口,在一批号码中检索出一批连续的号码供选则. 实现算法如下: import java.util.*; public class SerialNum { /**   * 在号 ...

最新文章

  1. Spring Cloud Gateway 整合阿里 Sentinel网关限流实战
  2. 谷歌抽屉_Google(最终)会杀死导航抽屉吗?
  3. Java IO实战操作(一)
  4. windows 使用 tricks
  5. jquery mini下载_【福利】iPhone 12 Pro Maxamp;mini预售开始啦!
  6. 中科大EPC课程查询自动选课
  7. matlab的输出(命令窗口、fprint函数、disp函数)
  8. unity 安装踩坑
  9. 账套恢复失败 文件服务器,用友T3恢复账套时提示:备份信息文件无效,恢复失败?...
  10. 这两款好用的识别图片文字的软件app值得你们收藏
  11. Business Transaction Events BTE 增强
  12. 零基础学习3D游戏建模要美术基础吗
  13. python 判断txt文件的编码格式
  14. flowable实战(二)flowable流程模型管理接口
  15. JMM内存模型 多线程三大特性
  16. 文件隐藏服务器版本信息,隐藏版本信息
  17. 【Java案例】购书系统(超详细)
  18. 2013年将成为传统店铺的末日?
  19. Github 上 annie 下载神器的安装及使用教程
  20. 文件太大无法复制到U盘

热门文章

  1. Python: 每日一题之平方和
  2. win11激活最简攻略,一分钟搞定(保姆级)
  3. 基于 DDR3 的串口传图帧缓存系统设计实现(fifo2mig_axi )
  4. 一文说清FISCO BCOS性能压测(附实例教程)
  5. Python-数据分析-常用检验-1-正态分布检验
  6. 深度学习-nlp系列(4):Word2Vec 字词向量的训练和使用
  7. CSS实现div滑入效果
  8. ZJOI2018旅游记
  9. pdf怎样添加水印?添加图片水印的方法
  10. java生成XML格式文件,导入MS Project生成甘特图