正则表达式语法表
2024-08-06 14:48:51 559
正则表达式(Regular Expression,简称 Regex 或 RegExp)是用来描述字符串模式的工具,广泛用于文本处理、搜索和匹配。
特殊字符
.:匹配除换行符外的任意字符。
^:匹配字符串的开始位置。
$:匹配字符串的结束位置。
\:转义字符,用于匹配特殊字符本身。
字符类
[abc]:匹配方括号内的任意一个字符。
[^abc]:匹配不在方括号内的任意一个字符。
[a-z]:匹配小写字母a到z中的任意一个字符。
[A-Z]:匹配大写字母A到Z中的任意一个字符。
[0-9]:匹配数字0到9中的任意一个字符。
预定义字符类
\d:匹配任何数字字符,相当于[0-9]。
\D:匹配任何非数字字符,相当于[^0-9]。
\w:匹配任何字母、数字或下划线字符,相当于[a-zA-Z0-9_]。
\W:匹配任何非字母、非数字和非下划线字符,相当于[^a-zA-Z0-9_]。
\s:匹配任何空白字符,包括空格、制表符和换行符。
\S:匹配任何非空白字符。
量词
*:匹配前一个字符零次或多次。
+:匹配前一个字符一次或多次。
?:匹配前一个字符零次或一次。
{n}:匹配前一个字符恰好n次。
{n,}:匹配前一个字符至少n次。
{n,m}:匹配前一个字符至少n次,至多m次。
边界匹配
^:匹配字符串的开始。
$:匹配字符串的结束。
\b:匹配一个单词边界。
\B:匹配非单词边界。
分组与引用
(abc):匹配括号内的字符序列并捕获匹配。
(?:abc):匹配括号内的字符序列但不捕获匹配。
\1, \2, ...:引用之前的捕获组。
|:匹配符号前或符号后的字符序列。
零宽断言
(?=abc):正向肯定断言,匹配abc前的位置。
(?!abc):正向否定断言,匹配非abc前的位置。
(?<=abc):反向肯定断言,匹配abc后的位置。
(?<!abc):反向否定断言,匹配非abc后的位置。
转义字符