正则表达式汇总

1、基本的元字符

元字符说明
.匹配任意单个字符
|逻辑或操作符
[ ]匹配字符集合中的一个字符,里面的元字符当做普通字符
[^]对字符集合求非
-定义一个区间(例如[A-Z])
\对下一个字符转义

2、数量元字符

元字符说明
*匹配前一个字符(子表达式)的零次或多次重复,等价于{0,}
*?*的懒惰型版本
+匹配前一个字符(子表达式)的一次或多次重复,等价于{1,}
+?+的懒惰型版本
匹配前一个字符(子表达式)的零次或一次重复,等价于{0,1}
{n}匹配前一个字符(子表达式)的n次重复
{m,n}匹配前一个字符(子表达式)至少m次,且至多n次重复
{n, }匹配前一个字符(子表达式)n次或更多次重复
{n, }?{n, }的懒惰型版本

3、位置元字符

元字符说明
^匹配字符串的开头
\A匹配字符串的开头
$匹配字符串的结束
\Z匹配字符串的结束
\<匹配单词的开头
\>匹配单词的结束
\b匹配单词边界(开头和结束),单词被定义为 Unidcode 的字母数字或下横线字符
\B

\b的反义,匹配非单词边界

4、特殊字符元字符

元字符说明
[\b]退格字符
\c匹配一个控制字符
\d匹配任意数字字符
\D\d的反义
\f换页符
\n换行符
\r回车符
\s匹配一个空白字符,包括 [ \t\n\r\f\v] 以及其他空白字符
\S\s的反义

\t

制表符(Tab字符)
\v垂直制表符
\w匹配任意字母数字字符或下划线字符
\W\w的反义
\x匹配一个十六进制数字
\0匹配一个八进制数字,由反斜杠后面三位数字表示(必须三位,不够用0补位)

5、回溯引用和前后查找

元字符说明
( )定义一个子表达式
\1

匹配第1个子表达式:\2代表第2个表达式,以此类推。数字范围是1-99

如果序号是以 0 开头,或者 3 个数字的长度。那么不会被用于引用对应的子组,而是用于匹配八进制数字所表示的 ASCII 码值对应的字符

?=向前查找
?<=向后查找
?!负向前查找
?<!负向后查找
?( )条件(if then)
?( )|条件(if then else)

6、大小写转换

元字符说明
\E结束\L或\U转换
\l把下一个字符转换成小写
\L把后面的字符转换成小写,直到遇见\E为止
\u把下一个字符转换成大写
\U把后面的字符转换成大写,直到遇见\E为止

7、匹配模式

元字符说明
(?m)分行匹配模式

摘自《正则表达式必知必会》

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值