Java正则表达式

本文主要描述Java正则表达式(Regular Expression),其作用是预先定义一个规则,然后,使用该规则匹配输入的字符串是否符合定义的规则,也可以从匹配的输出中提取字符串,正则表达式的常用使用场景包括字符串校验、提取字符串、规则引擎、语法规则。

正则定义

|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| 字符 x 字符x \\ 反斜杆 \xhh 十六进制值0xhh \t tab键('\u0009') \n 换行符('\u000A') \r 回车键('\u000D') |
| 列举 abc 字符a、b、c \^abc 不包括a、b、c的字符 a-zA-Z 范围a到z、范围A到Z的字符 a-d\[m-p] 范围a到d、范围m到p的并集 a-z\&\&\[def] 范围a到z与字符d、e、f的交集 a-z\&\&\[\^bc] 范围a到z不包括字符b、c a-z\&\&\[\^m-p] 范围a到z不包括字符范围m到p |
| 通用 . 点号表示任意字符 \d 数字0到9,0-9 \D 非数字0到9,\^0-9 \s 空格符 \S 非空格符,\^\\s \w 字, a-zA-Z_0-9 \W 非字, \^\\w |
| 界限 ^ 行开始位置 $ 行结束位置 |
| 次数 X? X, 出现0次、一次 X* X, 出现0次、多次 X+ X, 出现一次、多次 X{n} X, 出现n次 X{n,} X,出现大于或等于n次 X{n,m} X, 出现大于或等于n次并且小于或等于m次 |
| 逻辑 XY XY并排 X|Y X或者Y (X) X, 分组 |

使用示例

|--------------------------------------------------------------------------------------------------------------------------------------|
| ((\[a-zA-Z+-?a-zA-Z0-9+]+)@(\[a-zA-Z0-9+\\.a-zA-Z0-9+]+)) 定义一个分组的正则表达式,其形式是((a)@(b)),使用正则匹配可以提取其中分组a、b对应的字符串 |

相关推荐
Frag0ut20 小时前
Notepad++ 正则表达式完全手册:文本处理的终极武器(2026实战版)
正则表达式·notepad++·数据清洗·日志分析·正则替换·提取ip·正则表达式实战
Patrick在香港4 天前
一个斜杠,把毫秒变成十几秒
android·数据库·python·性能优化·正则表达式·回溯·redos
echome8884 天前
Python 正则表达式:5 个日常够用的模式
python·正则表达式
yivifu5 天前
能够使用Python正则表达式函数的文本处理工具——Calibre电子书编辑器
正则表达式
全栈陈序员6 天前
【Python】基础语法入门(二十九)—— 正则表达式实战:文本处理利器
开发语言·人工智能·python·正则表达式
BruceXu12 天前
\b 在中文里会静默失效:三个正则坑和一份能用的字符边界方案
正则表达式
阿昭L13 天前
正则表达式
正则表达式·编译原理
波力海苔夹心脆67513 天前
C# 正则表达式零基础入门:从“看得懂“到“会用“
经验分享·后端·mysql·正则表达式·c#
FRing0315 天前
JavaScript入门到精通二十四(正则表达式、元字符、修饰符)
开发语言·前端·javascript·正则表达式
小白快快跑哦16 天前
python-字符串全解(六):正则表达式-元字符与转义
python·正则表达式·字符串·元字符·转义