学习笔记-正则表达式

https://www.runoob.com/regexp/regexp-tutorial.html

正则表达式re(Regular Expression)是一种文本模式,包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为"元字符"),可以用来描述和匹配字符串的特定模式。

个人理解,re是对字符序列进行建模,建立多对一映射,能够覆盖所有字符序列,且没有歧义,形成一种语法协议。

正则表达式的模式:

c 复制代码
字面值字符:例如字母、数字、空格等,可以直接匹配它们自身。
特殊字符:例如点号 .、星号 *、加号 +、问号 ? 等,它们具有特殊的含义和功能。
字符类:用方括号 [ ] 包围的字符集合,用于匹配方括号内的任意一个字符。
元字符:例如 \d、\w、\s 等,用于匹配特定类型的字符,如数字、字母、空白字符等。
量词:例如 {n}、{n,}、{n,m} 等,用于指定匹配的次数或范围。
边界符号:例如 ^、$、\b、\B 等,用于匹配字符串的开头、结尾或单词边界位置。

语法可视化web工具:https://c.runoob.com/front-end/7625/#!flags=\&re=^(a|b)\*%3F%24

简化的语法列表:

c 复制代码
. - 除换行符以外的所有字符。
^ - 字符串开头。
$ - 字符串结尾。
\d,\w,\s - 匹配数字、字符、空格。
\D,\W,\S - 匹配非数字、非字符、非空格。
[abc] - 匹配 a、b 或 c 中的一个字母。
[a-z] - 匹配 a 到 z 中的一个字母。
[^abc] - 匹配除了 a、b 或 c 中的其他字母。
aa|bb - 匹配 aa 或 bb。
? - 0 次或 1 次匹配。
* - 匹配 0 次或多次。
+ - 匹配 1 次或多次。
{n} - 匹配 n次。
{n,} - 匹配 n次以上。
{m,n} - 最少 m 次,最多 n 次匹配。
(expr) - 捕获 expr 子模式,以 \1 使用它。
(?:expr) - 忽略捕获的子模式。
(?=expr) - 正向预查模式 expr。
(?!expr) - 负向预查模式 expr。
相关推荐
91刘仁德35 分钟前
C++ 内存管理
android·c语言·数据结构·c++·经验分享·笔记·算法
T700_6752 小时前
iPhone 16 Pro 语音笔记全攻略:高效捕捉灵感,智能记录生活
笔记·生活·iphone
试试勇气2 小时前
Linux学习笔记(十七)--线程概念
linux·笔记·学习
weixin_458872612 小时前
东华复试OJ二刷复盘12
学习
·醉挽清风·3 小时前
学习笔记—Linux—文件系统
linux·笔记·学习
科技林总3 小时前
【系统分析师】12.1 软件架构的概念
学习
FC皇家慕尼黑3 小时前
Claude Code学习--从搭建Nano Claude Code学习CC机制的底层原理
学习·ai·claude code
AI视觉网奇3 小时前
动作迁移算法笔记 2026
人工智能·笔记
happymaker06263 小时前
web前端学习日记——DAY01(HTML基本标签)
前端·学习·html
FC皇家慕尼黑3 小时前
Claude Code学习--从搭建Nano Claude Code学习CC机制的底层原理pt2
学习·ai·claude code