正则

博客围绕正则查询展开,介绍了用于正则查询的符号、特殊字符以及扩展表示法,为正则查询相关操作提供了关键信息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

用于查询正则

符号

字符描叙
literal匹配文本字符串的字面值literal
re1 | re2匹配正则表达式re1或者re2
.匹配任何字符(除了\n之外)
^匹配字符串起始部分
$匹配字符串终止部分
*匹配0次或者多次前面出现的正则表达式
+匹配1次或者多次前面出现的正则表达式
匹配0次或者1次前面出现的正则表达式
{N}匹配N次前面出现的正则表达式
{M,N}匹配M-N次前面出现的正则表达式
[…]匹配自字符集的任意单一字符
[…x-y…]匹配x-y范围中的任意单一字符
[^…]不匹配此字符集中出现的任何一个字符,包括某一范围的字符
(*|+|?|{})?用于匹配上面频繁出现/重复出现符号的非贪婪版本( *、+、?、{} )
(…)匹配封闭的正则表达式,然后另存为子组

特殊字符

字符描叙
\d匹配任何十进制数字,与[0-9]一致(\D与之相反)
\w匹配任何字母数字字符,与[A-Za-z0-9_]相同,(\W与之相反)
\s匹配任何空格字符,与[\n\t\r\v\f]相同(\S与之相反)
\b匹配任何单词边界(\B与之相反)
\N匹配已保存的子组N(参见上面的(…) )
\c逐字匹配任何特殊字符c(即,仅按照字面意义匹配,不匹配特殊含义)
\A(\Z)匹配字符串的起始(结束)(另见上面介绍的 ^ 和 $ )

扩展表示法

字符描叙
(?iLmsux)在正则表达式中嵌入一个或者多个特殊“标记”参数(或者通过函数/方法)
(?:…)表示一个匹配不用保存的分组
(?P…)像一个仅由name标识而不是数字ID标识的正则分组匹配
(?P=name)在同一字符串中匹配由 (?P<name) 分组的之前文本
(?#…)表示注释,所有内容都被忽略
(?=…)匹配条件是如果…出现在之后的位置,而不使用输入字符串;称作正向前视断言
(?!..)匹配条件是如果…不出现在之后的位置,而不使用输入字符串;称作负向前视断言
(?<=…)匹配条件是如果…出现在之前的位置,而不使用输入字符串;称作正向后视断言
(?<!..)匹配条件是如果…不出现在之前的位置,而不使用输入字符串;称作负向后视断言
(?(id/name)Y/N)如果分组所提供的id或者name()名称存在,就返回正则表达式的条件匹配Y,如果不存在,就返回N;|N是可选项
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

share notes

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值