Java常用正则表达式
package com.beike.springboot.other;import java.util.regex.Matcher; import java.util.regex.Pattern;/*** @ClassName: CommonRegex* @description: * @date: 2019/5/28 11:06*/ public class CommonRegex {/*** 验证Email** @param email email地址,格式:zhang@gmail.com,zhang@xxx.com.cn,xxx代表邮件服务商* @return 验证成功返回true,验证失败返回false*/public static boolean checkEmail(String email) {String regex = "\\w+@\\w+\\.[a-z]+(\\.[a-z]+)?";return Pattern.matches(regex, email);}/*** 验证身份证号码** @param idCard 居民身份证号码15位或18位,最后一位可能是数字或字母* @return 验证成功返回true,验证失败返回false*/public 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,验证失败返回false*/public 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,验证失败返回false*/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,验证失败返回false*/public static boolean checkDigit(String digit) {String regex = "\\-?[1-9]\\d+";return Pattern.matches(regex, digit);}/*** 验证整数和浮点数(正负整数和正负浮点数)** @param decimals 一位或多位0-9之间的浮点数,如:1.23,233.30* @return 验证成功返回true,验证失败返回false*/public static boolean checkDecimals(String decimals) {String regex = "\\-?[1-9]\\d+(\\.\\d+)?";return Pattern.matches(regex, decimals);}/*** 验证空白字符** @param blankSpace 空白字符,包括:空格、\t、\n、\r、\f、\x0B* @return 验证成功返回true,验证失败返回false*/public static boolean checkBlankSpace(String blankSpace) {String regex = "\\s+";return Pattern.matches(regex, blankSpace);}/*** 验证中文** @param chinese 中文字符* @return 验证成功返回true,验证失败返回false*/public static boolean checkChinese(String chinese) {String regex = "^[\u4E00-\u9FA5]+$";return Pattern.matches(regex, chinese);}/*** 验证日期(年月日)** @param birthday 日期,格式:1992-09-03,或1992.09.03* @return 验证成功返回true,验证失败返回false*/public static boolean checkBirthday(String birthday) {String regex = "[1-9]{4}([-./])\\d{1,2}\\1\\d{1,2}";return Pattern.matches(regex, birthday);}/*** 验证URL地址** @param url 格式:http://blog.csdn.net:80/xyang81/article/details/7705960? 或 http://www.csdn.net:80* @return 验证成功返回true,验证失败返回false*/public static boolean checkURL(String url) {String regex = "(https?://(w{3}\\.)?)?\\w+\\.\\w+(\\.[a-zA-Z]+)*(:\\d{1,5})?(/\\w*)*(\\??(.+=.*)?(&.+=.*)?)?";return Pattern.matches(regex, url);}/*** * 获取网址 URL 的一级域名* http://detail.tmall.com/item.htm?spm=a230r.1.10.44.1xpDSH&id=15453106243&_u=f4ve1uq1092 ->> tmall.com** @param url* @return*/private static Pattern p = Pattern.compile("(?<=http://|\\.)[^.]*?\\.(com|cn|net|org|biz|info|cc|tv)", Pattern.CASE_INSENSITIVE);public static String getDomain(String url) {// 获取完整的域名// Pattern p=Pattern.compile("[^//]*?\\.(com|cn|net|org|biz|info|cc|tv)", Pattern.CASE_INSENSITIVE);Matcher matcher = p.matcher(url);matcher.find();return matcher.group();}/*** 匹配中国邮政编码** @param postcode 邮政编码* @return 验证成功返回true,验证失败返回false*/public static boolean checkPostcode(String postcode) {String regex = "[1-9]\\d{5}";return Pattern.matches(regex, postcode);}/*** 匹配IP地址(简单匹配,格式,如:192.168.1.1,127.0.0.1,没有匹配IP段的大小)** @param ipAddress IPv4标准地址* @return 验证成功返回true,验证失败返回false*/public 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, ipAddress);}//是否包含 . 号public static boolean checkContainsDot(String username) {return username.contains(".");}//是否包含连词符public static boolean checkContainsHyphen(String username) {return username.contains("-");}//密码长度 6-20public static boolean checkUserPasswordLength(String pwd) {return pwd.length() > 5 && pwd.length() < 21;}public static boolean isValidUserName(String un) {String regex = "([A-Z0-9a-z-]|[\\u4e00-\\u9fa5])+";return Pattern.matches(regex, un);}}
转载于:https://www.cnblogs.com/fanBlog/p/10935983.html
Java常用正则表达式相关推荐
- Java 常用正则表达式,Java正则表达式,Java身份证校验,最新手机号码正则表达式...
Java 常用正则表达式,Java正则表达式,Java身份证校验,最新手机号码校验正则表达式 ============================== ©Copyright 蕃薯耀 2017年11 ...
- Java 常用正则表达式,Java正则表达式,Java身份证校验,最新手机号码校验正
Java 常用正则表达式,Java正则表达式,Java身份证校验,最新手机号码校验正则表达式 ============================== ©Copyright 蕃薯耀 2017年10 ...
- Java 常用正则表达式与测试
正则表达式常用于字符的验证, 常用的正则表达式: 正则表达式 意义 例 任意字符 与正则表达式一致 \ 单斜杠 \ \t 制表符 \n 换行 单个字符 [abc] 包括a.b或c三个字符中的一个 [^ ...
- java常用正则表达式整理
常用的正则表达式主要有以下几种: 匹配中文字符的正则表达式:[\u4e00-\u9fa5] 获取日期正则表达式:\d{4}[年|\-|\.]\d{1,2}[月|\-|\.]\d{1,2}日? 匹配 ...
- java 常用正则表达式
匹配中文字符的正则表达式: [\u4e00-\u9fa5] 评注:匹配中文还真是个头疼的事,有了这个表达式就好办了 匹配双字节字符(包括汉字在内):[^\x00-\xff] 评注:可以用来计算字符串的 ...
- Java 常用正则表达式整理
- java常见正则表达式用法
java常见正则表达式用法 例1: 判断整个字符串是否只有大小写字母和数字 String str = "ABCaaa123GG";String reg = "^[A-Za ...
- Java常用API(三)Pattern 正则表达式
1. 一个用于指定规则的类 正则Regex , 在java中正则形成了一个单独的包 java.util.regex , 代表正则的类 --- Pattern 正则表达式本质上适用于指定匹配或筛选规则的 ...
- 常用正则表达式合集与工具
any-rule 维护了一个常用正则表达式合集,并且本身是一个支持 Web/VS Code/idea/Alfred Workflow 多平台的正则表达式工具. image 安装 VS Code 应用商 ...
最新文章
- 【Qt】Qt中调用python接口
- 【科普】大脑是如何编码复杂信息的?
- 使用纯 Win32 API 编程实现Winpcap 封包捕获的第一个例子
- pythonunicode和str_python的str,unicode对象的encode和decode方法
- ZOJ2930 The Worst Schedule(最小割)
- 百度最全的LINUX和Redhat学习教程下载帖大全
- java certification_Java Certification.Status方法代码示例
- TP-LINK WR841N V8刷OpenWRT
- 插件占坑,四大组件动态注册前奏(二) 系统Service的启动流程
- quick code ide设置分辨率
- 机器人开发--OS系统介绍
- 前端网页设计必逛的六个宝藏网站(非常值得收藏)
- android扫雷PPT,《扫雷游戏制作》PPT课件.ppt
- High-Sierra,MacOS10.13,增加IntelHD3000显存的方法
- 浅谈Android自定义View
- 实验室设备选择UPS电源方法
- [python]微信公众号文章爬取
- POE交换机和普通交换机哪里不同
- 利用百度AI开放平台 实现 图片中的文字识别
- WINVNC源码分析(四)——IO之rdr库
热门文章
- Android中的Fragment使用
- python测试用例图_pytest以函数形式的测试用例
- python open方法下file模块_python 文件操作
- gcc-linux6.3,[环境配置]Ubuntu16.04下编译安装gcc6.3.0
- 【教程】Linux 下软 RAID 实现方案!!
- oracle导出库压缩参数,oracle数据库的定时备份:导出 压缩 归类
- sqlalchemy mysql教程_python使用SQLAlchemy操作MySQL
- 阿里新晋 CNCF TOC 委员张磊:“云原生”为什么对云计算生态充满吸引力?
- 通过 IDE/Maven 部署 Serverless 应用实践
- php麻将机器人ai算法,高性能麻将AI算法