初始Java正则匹配式
最近,在开发时遇到了不少正则匹配,经过一番研究,有了初步的认识,在此先记录下。
1.常见表达式
// 反斜杠
/t 间隔 ('/u0009')
/n 换行 ('/u000A')
/r 回车 ('/u000D')
/d 数字 等价于[0-9]
/D 非数字 等价于[^0-9]
/s 空白符号 [/t/n/x0B/f/r]
/S 非空白符号 [^/t/n/x0B/f/r]
/w 单独字符 [a-zA-Z_0-9]
/W 非单独字符 [^a-zA-Z_0-9]
/f 换页符
/e Escape
/b 一个单词的边界
/B 一个非单词的边界
/G 前一个匹配的结束
2.限制型
^为限制开头
^java 就表示从java开始找起来
$为限制结尾
java$ 已java做为结束
. 表示任意字符 但不包括换行符
java.. 表示匹配java后面2个不为换行符的任意字符
3.条件型 []
不在乎顺序,只要符合的就会帮你找出来
如[-+.] 表示对应的"-","+","."任意一个
[a-z] 条件限制在小写a to z范围中一个字符
[A-Z] 条件限制在大写A to Z范围中一个字符
[a-zA-Z] 条件限制在小写a to z或大写A to Z范围中一个字符
[0-9] 条件限制在小写0 to 9范围中一个字符
[0-9a-z] 条件限制在小写0 to 9或a to z范围中一个字符
[0-9[a-z]] 条件限制在小写0 to 9或a to z范围中一个字符(交集)
[]中加入^后加表示相反,即非的意思
[^a-z] 条件限制在非小写a to z范围中一个字符
[^A-Z] 条件限制在非大写A to Z范围中一个字符
[^a-zA-Z] 条件限制在非小写a to z或大写A to Z范围中一个字符
[^0-9] 条件限制在非小写0 to 9范围中一个字符
[^0-9a-z] 条件限制在非小写0 to 9或a to z范围中一个字符
[^0-9[a-z]] 条件限制在非小写0 to 9或a to z范围中一个字符(交集)
4.限制次数型
* ,+ ,? 三种,一定是在字符后面,表示字符的出现次数 ,以下例子已十分详细
在限制条件为特定字符出现0次以上时,可以使用「*」
J* 0个以上J
.* 0个以上任意字符
J.*D J与D之间0个以上任意字符
在限制条件为特定字符出现1次以上时,可以使用「+」
J+ 1个以上J
.+ 1个以上任意字符
J.+D J与D之间1个以上任意字符
在限制条件为特定字符出现有0或1次以上时,可以使用「?」
JA? J或者JA出现
{} 代表长度
限制为连续出现指定次数字符「{a}」
J{2} JJ
J{3} JJJ
文字a个以上,并且「{a,}」
J{3,} JJJ,JJJJ,JJJJJ,???(3次以上J并存)
文字个以上,b个以下「{a,b}」
J{3,5} JJJ或JJJJ或JJJJJ
| 代表或的意思,与?类似
两者取一「|」
J|A J或A
Java|Hello Java或Hello
特别标注下 : Matcher . group()方法
其实也就是()来划分
如: (A)(B(C)) 有4组 0 一定是整个表达式
group(0) ((A)(B(C)))
如: (A)(B(C)) 有4组 0 一定是整个表达式
group(0) ((A)(B(C)))
group(1) (A)
group(2) (B(C)
group(3) (C)
初始Java正则匹配式相关推荐
- java 正则 空白字符_关于JAVA正则匹配空白字符的问题
今天遇到一个字符串,怎么匹配空格都不成功!!! 我把空格复制到test.properties文件 显示"\u3000" ,这是什么? 这是全角空格!!! 查了一下 \s ...
- Java正则匹配提取年月日字符串
Java正则匹配提取年月日字符串 String string1="9999-9-99";Pattern p = Pattern.compile("(\\d{4})-(\\ ...
- Java正则匹配 以某个汉字开头和结束
Java正则匹配 以某个汉字开头和结束 Java代码示意: public static void main(String[] args) {String str = "正则匹配测试" ...
- java正则匹配table_js正则匹配table tr
js正则匹配table tr 我觉得比ijao简单,但是脑子就是转不过弯....请正则高手看看阿. 复制代码 代码如下: title title2 data1 data2 data1 da ...
- 一个通用的Java正则匹配工具(检查邮箱名、电话号码、用户密码、邮政编码等合法性的工具类)
一个通用的Java正则匹配工具(检查邮箱名.电话号码.用户密码.邮政编码等合法性的工具类). 一个通用且常用的Java正则匹配工具,用以检查邮箱名.电话号码.用户密码.邮政编码等合法性. import ...
- java正则匹配英文句号_「正则表达式」王国奇遇记
第一回 初来乍到 NPC: "欢迎来到正则表达式的国度,勇士!这里的每一个人都使用正则表达式,我是这里的 NPC,每一个来到这里的人都将由我代为介绍正则世界的规则,至于能领悟到何种境界,就看 ...
- Java正则匹配淘口令
Java淘口令正则匹配,网上找了一些发现已经过时了就重新写了一个! 更新时间2022/10/27 /*淘口令匹配规则一用于匹配类似¥ CZ0001 EqHxdal4zdb¥和¥d6zbdalW0vw¥ ...
- java 半角空格_关于JAVA正则匹配空白字符的问题(全角空格与半角空格)
今天遇到一个字符串,怎么匹配空格都不成功!!! 我把空格复制到test.properties文件 显示"\u3000" ,这是什么? 这是全角空格!!! 查了一下 \s ...
- Java正则匹配数字,小数点后两位数字,区间表达式
利用Java的Pattern类,进行正则匹配数字,小数,精度控制到两位小数,区间表达式的正确性 上代码: public static void main(String[] args) {String ...
最新文章
- Js中的style,currentStyle,getComputedStyle()区别
- TEXT和_T,_TEXT
- 第三次学JAVA再学不好就吃翔(part37)--接口概述
- oracle plsql异常,【Oracle篇】异常处理和PLSQL
- 每日一题(17)—— 关键字volatile的作用和三个不同的应用场合
- C++:不同数据类型作为参数传递和作为返回值的例子
- shell下将查看大文件有多少行
- mysql同步一段时间后失败_mysql 主从同步失败后
- java线程同步的作用_Java并发编程之线程同步
- PowerDesigner 下载安装
- 110道 Redis面试题及答案 (持续更新)
- 计算机应用基础都学什么,计算机应用基础学习计划
- 昨天买的电动车今天上牌了
- 新买的电脑是win11系统,找不到DirectX工具?教你如何操作打开
- linux 查看nas磁盘阵列,NAS(linux)阵列管理
- html table的边框线怎么变圆角_CSS如何设置html table表格边框样式
- 大场景室内点云标注数据集S3DIS介绍
- Boost库安装与使用
- Flutter 淡入淡出效果
- 高级灰+中国红,这才是家应该有的样子
热门文章
- ArduPilot Copter Release Notes 中文翻译
- 2021广东高考成绩排名如何查询,2021广东高考成绩排名顺序查询,广东省高考全省排名怎么查...
- 家用吸尘器的总体结构设计
- 微信企业付款开通入口
- UVALive - 4380 Javanese Cryptoanalysis
- WebOS 1.4.5 SDK安装与第一个Hello World
- 新手搭建 WordPress 网站终极解决方案 基于 Bitnami 堆栈快速搭建完美个人博客(Blog)
- HttpServletRequest接口:请求域
- 用 Python 制作 NFT 区块链作品(上)
- Point-GNN README批注