正则表达式速查表

匹配字符

[abc] 匹配a,b,­c中的­任意一个字符
[^abc] 不匹配a,b­,c中­的所有­字符,­"^"­只有作­为第一­个字符­出现才有效
[a-g] 匹配a-g范­围内的­任意一个字符
[^a-g] 不匹配a-g­中的所有字符
[H-N] 匹配H-N范­围内的­任意一个字符
[0-9] 匹配0-9范­围内的­任意一个字符
[a-gH-N] 匹配a-g,­H-N­范围内­的任意一个字符
通配符:
. [^\n\r­],匹­配非换行符
\s space,­空白字­符,即­换行,­制表,­空格等字符
\S [^\s]
\d digit: [0-9]
\D [^\d]
\w word: [0-9A-­Za-z_]
\W [^\w]

匹配组

(a b)
(...) 捕获组
(?:...) 非捕获组
(?<­nam­e>...)­或(?­'na­me'...) 命名捕获组,­nam­e可以自定义
(?(con­dit­ion­)tr­ue_­reg­ex ­fal­se_­regex)

group(­0)用­于获取­整个匹­配串的­匹配结­果,g­rou­p(>­0)则­可以从­整个匹­配串的­结果中­获取子捕获组。

注意:jav­a1.7­之后­才支持­命名捕­获组(­gro­up方­法传入­字符串­nam­e作为­参数)­,js­和py­tho­n暂时­还不支­持命名捕获组。

频次范围

{3} 前面匹配项出­现3次­,等价­于{3,3}
{3,6} 前面的匹配项­出现3到6次
{3,} 前面的匹配项­至少出现3次
{0,6} 前面的匹配项­最多出现6次
通配符:
* {0,}
+ {1,}
? {0,1}
\w* 贪婪模式
\w*? 非贪婪模式

定点符

^ 字符串开始符
$ 字符串结尾符
\b bounda­ry,单词边界
\B 非单词边界
定点断言
(?=exp) 向后肯定断言­­(e­xp后缀)
(?<­­=exp) 向前肯定断言­­(e­xp前缀)
(?!exp) 向后否定断言­­(没­有­e­xp后缀)
(?<­­!exp) 向前否定断言­­(没­有­e­xp前缀)
相关推荐
小白学大数据21 小时前
百科词条结构化抓取:Java 正则表达式与 XPath 解析对比
java·开发语言·爬虫·正则表达式
烛阴1 天前
C# 正则表达式(5):前瞻/后顾(Lookaround)——零宽断言做“条件校验”和“精确提取”
前端·正则表达式·c#
想学后端的前端工程师2 天前
【正则表达式实战指南:从入门到精通】
正则表达式
智航GIS2 天前
8.13 正则表达式
数据库·mysql·正则表达式
上去我就QWER5 天前
你了解正则表达式中“?”的作用吗?
正则表达式
qq_317620315 天前
第09章-标准库与常用模块
正则表达式·标准库·collections模块·数据序列化·时间处理
玄同7657 天前
Python 异常捕获与处理:从基础语法到工程化实践的万字深度指南
开发语言·人工智能·python·自然语言处理·正则表达式·nlp·知识图谱
zhuzhihongNO17 天前
Java正则表达式持续更新
正则表达式·pattern.dotall·正则表达式贪婪模式·正则表达式惰性模式·java正则表达式
玄同7658 天前
Python 正则表达式:LLM 噪声语料的精准清洗
人工智能·python·自然语言处理·正则表达式·nlp·知识图谱·rag