学习笔记-正则表达式

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。
相关推荐
新手小新3 分钟前
unity学习——视觉小说开发(二)
学习·unity·游戏引擎
叮咚前端29 分钟前
vue3笔记
前端·javascript·笔记
小晶晶京京2 小时前
day43-Ansible-PlayBook
linux·运维·学习·ansible
三水彡彡彡彡2 小时前
Java中使用正则表达式的正确打开方式
java·开发语言·正则表达式
Janspran2 小时前
嵌入式Linux学习 - 远程连接 与 wireshark
linux·学习·wireshark
一条破秋裤2 小时前
【拍摄学习记录】07-影调、直方图量化、向右向左
学习
Source.Liu3 小时前
【Rust】 2. 数据类型笔记
开发语言·笔记·rust
梦中的天之酒壶3 小时前
Mysql 学习感悟 Day 1 Mysql架构
学习·mysql
limengshi1383924 小时前
人工智能学习:Linux相关面试题
linux·人工智能·深度学习·学习
凯尔萨厮4 小时前
Oracle下载安装(学习版)
学习