最近,在开发时遇到了不少正则匹配,经过一番研究,有了初步的认识,在此先记录下。
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正则匹配式相关推荐

  1. java 正则 空白字符_关于JAVA正则匹配空白字符的问题

    今天遇到一个字符串,怎么匹配空格都不成功!!! 我把空格复制到test.properties文件 显示"\u3000" ,这是什么? 这是全角空格!!! 查了一下    \s   ...

  2. Java正则匹配提取年月日字符串

    Java正则匹配提取年月日字符串 String string1="9999-9-99";Pattern p = Pattern.compile("(\\d{4})-(\\ ...

  3. Java正则匹配 以某个汉字开头和结束

    Java正则匹配 以某个汉字开头和结束 Java代码示意: public static void main(String[] args) {String str = "正则匹配测试" ...

  4. java正则匹配table_js正则匹配table tr

    js正则匹配table tr 我觉得比ijao简单,但是脑子就是转不过弯....请正则高手看看阿. 复制代码 代码如下: title title2 data1 data2       data1 da ...

  5. 一个通用的Java正则匹配工具(检查邮箱名、电话号码、用户密码、邮政编码等合法性的工具类)

    一个通用的Java正则匹配工具(检查邮箱名.电话号码.用户密码.邮政编码等合法性的工具类). 一个通用且常用的Java正则匹配工具,用以检查邮箱名.电话号码.用户密码.邮政编码等合法性. import ...

  6. java正则匹配英文句号_「正则表达式」王国奇遇记

    第一回 初来乍到 NPC: "欢迎来到正则表达式的国度,勇士!这里的每一个人都使用正则表达式,我是这里的 NPC,每一个来到这里的人都将由我代为介绍正则世界的规则,至于能领悟到何种境界,就看 ...

  7. Java正则匹配淘口令

    Java淘口令正则匹配,网上找了一些发现已经过时了就重新写了一个! 更新时间2022/10/27 /*淘口令匹配规则一用于匹配类似¥ CZ0001 EqHxdal4zdb¥和¥d6zbdalW0vw¥ ...

  8. java 半角空格_关于JAVA正则匹配空白字符的问题(全角空格与半角空格)

    今天遇到一个字符串,怎么匹配空格都不成功!!! 我把空格复制到test.properties文件 显示"\u3000" ,这是什么? 这是全角空格!!! 查了一下    \s   ...

  9. Java正则匹配数字,小数点后两位数字,区间表达式

    利用Java的Pattern类,进行正则匹配数字,小数,精度控制到两位小数,区间表达式的正确性 上代码: public static void main(String[] args) {String ...

最新文章

  1. Js中的style,currentStyle,getComputedStyle()区别
  2. TEXT和_T,_TEXT
  3. 第三次学JAVA再学不好就吃翔(part37)--接口概述
  4. oracle plsql异常,【Oracle篇】异常处理和PLSQL
  5. 每日一题(17)—— 关键字volatile的作用和三个不同的应用场合
  6. C++:不同数据类型作为参数传递和作为返回值的例子
  7. shell下将查看大文件有多少行
  8. mysql同步一段时间后失败_mysql 主从同步失败后
  9. java线程同步的作用_Java并发编程之线程同步
  10. PowerDesigner 下载安装
  11. 110道 Redis面试题及答案 (持续更新)
  12. 计算机应用基础都学什么,计算机应用基础学习计划
  13. 昨天买的电动车今天上牌了
  14. 新买的电脑是win11系统,找不到DirectX工具?教你如何操作打开
  15. linux 查看nas磁盘阵列,NAS(linux)阵列管理
  16. html table的边框线怎么变圆角_CSS如何设置html table表格边框样式
  17. 大场景室内点云标注数据集S3DIS介绍
  18. Boost库安装与使用
  19. Flutter 淡入淡出效果
  20. 高级灰+中国红,这才是家应该有的样子

热门文章

  1. ArduPilot Copter Release Notes 中文翻译
  2. 2021广东高考成绩排名如何查询,2021广东高考成绩排名顺序查询,广东省高考全省排名怎么查...
  3. 家用吸尘器的总体结构设计
  4. 微信企业付款开通入口
  5. UVALive - 4380 Javanese Cryptoanalysis
  6. WebOS 1.4.5 SDK安装与第一个Hello World
  7. 新手搭建 WordPress 网站终极解决方案 基于 Bitnami 堆栈快速搭建完美个人博客(Blog)
  8. HttpServletRequest接口:请求域
  9. 用 Python 制作 NFT 区块链作品(上)
  10. Point-GNN README批注