正则表达式笔记

元素


匹配的单位字符即为元素。

特殊符号释义
.表示任意一个字符
^集合内为取非运算符;否则表示字符串开头,用于位置匹配
$字符串结尾,用于位置匹配
\用于特殊字符转义
\..
\^^
\$$
\\\
\t制表符
\rWindows回车符
\n换行符
\b区别 //w//W 的单词边界,用于位置匹配
\E结束 \L\U 之间的转换
\l把下一个字符转换为小写
\L\L\E之间的字符转换为小写
\u把下一个字符转换为大写
\U\U\E之间的字符转换为大写
\v垂直制表符
\f换页符
\((
\))
\{{
\}}
\||
\xA匹配ASCII字符序号为A的16进制元素(此处A代表数字)
\0A匹配ASCII字符序号为A的8进制元素(此处A代表数字)
[\b]退格符
(?m)分行位置匹配符(注意:有些语言可能不支持)

集合


由左中括号 ‘[’ 开始到右中括号 ‘]’ 结束的元素组合。

示例释义
[a]表示集合中只有a元素
[a-z]表示集合中有a到z的所有小写字母
[^a]表示集合中有除a的所有元素
\w[\w]word缩写,表示所有大小写字母、数字及下划线_
\W[\W]表示除了 \w 之外的所有元素
\d[\d]digit缩写,表示0~9所有的数字
\D[\D]表示除了 \d 之外的所有元素
\s[\s]space缩写,表示 \t \r \n 空格
\S[\S]表示除了 \s 之外的所有元素

注意:集合内的字符可以不用转义

匹配符


符号表示释义
+匹配至少一次
*匹配至少零次
?匹配最多一次
{a}匹配a次
{a,}至少匹配a次
{,b}最多匹配b次
{a,b}至少匹配a次,最多匹配b次
其中 a,b代表任意正整数

表达式


由左圆括号’('开始到右圆括号‘)’结束的正则表达式片段称之为子表达式
\n代表对第n个子表达式的回溯引用,在许多实现里,\0代表整个正则表达式。
(?<NAME>X) 代表对正则表达式片段X的 命名捕获,该表达式命名为NAME,引用时使用${NAME}。
?=X表示 向前查找到正则表达式片段X前的位置,X匹配到的及其后的字符串将不予处理。
?!X表示 负向前查找到非正则表达式片段X前的位置,非X匹配到的及其后的字符串将不予处理。
?<=X表示 向后查找到正则表达式片段X后的位置,X匹配到的及其前的字符串将不予处理。
?<!X表示 负向后查找到非正则表达式片段X后的位置,非X匹配到的及其前的字符串将不予处理。
?(N)X|Y表示 回溯引用嵌入条件匹配,即如果第N个子表达式存在那么匹配X否则匹配Y,其中Y可以是可选项。
?(?=X)Y|Z表示 前后查找嵌入条件匹配,即如果匹配到X那么继续匹配Y否则匹配Z,其中Z可以是可选项。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值