正则表达式

文章目录


参考1: https://www.runoob.com/java/java-regular-expressions.html

参考2: https://www.runoob.com/regexp/regexp-syntax.html

开头与结尾

java 复制代码
^ 表示开头
$ 表示结尾

字符

java 复制代码
a-z 表示小写字符a-z
A-Z 同理表示大写A~Z 
0-9 表示数字0-9

[ ] 匹配括号内的任意一个字符。例如,[abc] 匹配字符 "a"、"b" 或 "c"。
[^ ] 匹配除了括号内的字符以外的任意一个字符。例如,[^abc] 匹配除了字符 "a"、"b" 或 "c" 以外的任意字符。

量词 & 限定符

java 复制代码
? 表示可以出现或者不出现,可0可1
* 表示0个或者多个字符,0到正无穷
+ 表示至少出现一次,1到正无穷

* 与 + 是贪婪的,会尽可能多匹配,当他们后面是问号?时候才会非贪婪。

{n} 匹配前面的模式恰好 n 次。
{n,} 匹配前面的模式至少 n 次。
{n,m} 匹配前面的模式至少 n 次且不超过 m 次。

分组

java 复制代码
( ) 用于分组和捕获子表达式。表示一个整体
(?: ) 用于分组但不捕获子表达式。

(ab)表示ab两个字母组成一个整体,两个要一起出现
(ab)+表示多次匹配ab

| 表示或
(cat | dog) 表示可以是 cat 或者 dog
[abc]表示字符只可以来自abc这三个之中,不限制顺序

^表示不能是什么,表示非
^[ 0-9 ]表示不能是0-9,及不能是数字

元字符

java 复制代码
\d 数字字符
\w 单词字符 = 字母,数字,下划线
\s 空格,tab,换行
\D 非数字
\W 非\w
\S 非\s
\n 换行
. 表示任意字符,但不可以是换行符号

定位符

java 复制代码
^ 表示开头 $ 表示结尾
\b 单词的开头或者结尾,匹配一个单词边界,即字与空格间的位置。
\B 不是开头与结尾
相关推荐
Bug-制造者8 小时前
正则表达式 vs Shell通配符:彻底分清,告别命令行踩坑
linux·正则表达式
剑神一笑2 天前
Linux top 命令深度解析:进程监控的性能优化实战
linux·运维·正则表达式
jayson.h2 天前
正则表达式:从文件名提取器件编号
开发语言·python·正则表达式
水木流年追梦2 天前
大模型入门-应用篇3-Agent智能体
开发语言·python·算法·leetcode·正则表达式
gCode Teacher 格码致知3 天前
Python教学:正则表达式中的match 和fullmatch的经典使用-由Deepseek产生
python·正则表达式
gCode Teacher 格码致知3 天前
Python教学:正则表达式的寻找、匹配、替换、删除 四种模式案例-由Deepseek产生
开发语言·python·正则表达式
yuananyun3 天前
正则性能与灾难性回溯:如何写得快且稳,并避免线上卡死
正则表达式·正则性能优化·redos攻击
若阳安好4 天前
【备忘录】正则表达式
后端·正则表达式·restful
剑神一笑5 天前
Linux grep 命令深度解析:从正则表达式到性能优化
linux·运维·正则表达式
@小柯555m6 天前
MySql(正则表达式--电话号码格式校验)
数据库·sql·mysql·正则表达式