正则表达式语法表
2024-08-06 14:48:51 457
正则表达式(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后的位置。
转义字符