TingYu Tools

正则速查表

常用元字符与标志

🔍 搜索

📁 类别

总类别:7
总模式:51
💡 使用说明

正则表达式是一种强大的文本模式匹配工具。本速查表列出了常用的元字符和标志。

快速提示

  • 点击类别快速筛选
  • 使用搜索框查找特定模式
  • 点击模式可快速复制
  • 查看示例了解实际用法

所有模式

🔤 基本字符

.
任意字符
匹配除换行符外的任意单个字符
示例:a.c → abc, a1c, a@c
\d
数字
匹配任意数字 [0-9]
示例:\d+ → 123, 456
\D
非数字
匹配任意非数字字符
示例:\D+ → abc, xyz
\w
单词字符
匹配字母、数字、下划线 [A-Za-z0-9_]
示例:\w+ → hello, user_123
\W
非单词字符
匹配非字母、数字、下划线的字符
示例:\W+ → @#$, !!!
\s
空白字符
匹配空格、制表符、换行符等
示例:\s+ → 空格, tab
\S
非空白字符
匹配非空白字符
示例:\S+ → hello, 123
\t
制表符
匹配水平制表符(Tab)
示例:\t → Tab键
\n
换行符
匹配换行符
示例:\n → 换行
\r
回车符
匹配回车符
示例:\r → 回车

定位符

^
行首
匹配字符串或行的开始位置
示例:^hello → 匹配行首的hello
$
行尾
匹配字符串或行的结束位置
示例:world$ → 匹配行尾的world
\b
单词边界
匹配单词的开始或结束位置
示例:\bcat\b → cat 但不匹配 catch
\B
非单词边界
匹配非单词边界位置
示例:\Bcat\B → catch 中的 cat
\A
字符串开始
匹配字符串的绝对开始位置
示例:\Ahello → 字符串开头的hello
\Z
字符串结束
匹配字符串的绝对结束位置
示例:world\Z → 字符串结尾的world

🔢 量词

*
零次或多次
匹配前面的模式零次或多次
示例:a* → "", a, aa, aaa
+
一次或多次
匹配前面的模式一次或多次
示例:a+ → a, aa, aaa
?
零次或一次
匹配前面的模式零次或一次
示例:a? → "", a
{n}
恰好n次
匹配前面的模式恰好 n 次
示例:a{3} → aaa
{n,}
n次或更多
匹配前面的模式至少 n 次
示例:a{2,} → aa, aaa, aaaa
{n,m}
n到m次
匹配前面的模式 n 到 m 次
示例:a{2,4} → aa, aaa, aaaa
*?
非贪婪星号
非贪婪匹配,尽可能少匹配
示例:<.*?> → <div> 而非 <div>...</div>
+?
非贪婪加号
非贪婪匹配,尽可能少匹配
示例:a+? → 优先匹配单个a
??
非贪婪问号
非贪婪匹配,优先匹配零次
示例:a?? → 优先匹配空

📦 分组与引用

(...)
捕获组
捕获匹配的内容,可用 $1, $2 引用
示例:(\d{4})-(\d{2}) → $1年$2月
(?:...)
非捕获组
分组但不捕获,不占用编号
示例:(?:http|https)://... → 不捕获协议
(?<name>...)
命名捕获组
为捕获组指定名称
示例:(?<year>\d{4}) → $<year>
\1, \2
反向引用
引用前面的捕获组
示例:(\w)\1 → aa, bb, cc
(?=...)
正向先行断言
匹配后面跟着指定模式的位置
示例:foo(?=bar) → foo (仅当后面是bar)
(?!...)
负向先行断言
匹配后面不跟指定模式的位置
示例:foo(?!bar) → foo (后面不是bar)
(?<=...)
正向后行断言
匹配前面是指定模式的位置
示例:(?<=@)\w+ → 匹配@后的单词
(?<!...)
负向后行断言
匹配前面不是指定模式的位置
示例:(?<!@)\w+ → 匹配非@后的单词

📝 字符类

[abc]
字符集合
匹配方括号中的任意一个字符
示例:[aeiou] → a, e, i, o, u
[^abc]
否定字符集
匹配不在方括号中的任意字符
示例:[^0-9] → 非数字字符
[a-z]
字符范围
匹配指定范围内的字符
示例:[a-z] → 小写字母
[A-Z]
大写字母
匹配大写字母
示例:[A-Z]+ → ABC, XYZ
[0-9]
数字范围
匹配 0 到 9 的数字
示例:[0-9]+ → 123, 456
[a-zA-Z]
所有字母
匹配大小写字母
示例:[a-zA-Z]+ → Hello
[a-zA-Z0-9]
字母数字
匹配字母和数字
示例:[a-zA-Z0-9]+ → abc123

特殊字符

|
或运算
匹配左侧或右侧的模式
示例:cat|dog → cat 或 dog
\
转义字符
转义特殊字符为字面量
示例:\. → 字面量点号
\x{...}
Unicode
匹配指定的 Unicode 字符
示例:\x{4e2d} → 中
\u{...}
Unicode码点
Unicode 码点表示
示例:\u{1F600} → 😀
[\b]
退格符
匹配退格字符(注意与\b区别)
示例:[\b] → 退格

🚩 标志

g
global
全局匹配,查找所有匹配项
示例:/a/g → 找到所有a
i
ignoreCase
不区分大小写
示例:/abc/i → ABC, abc
m
multiline
多行模式,^和$匹配行首行尾
示例:/^hello/m → 每行开头的hello
s
dotAll
点号匹配所有字符(包括换行符)
示例:/a.b/s → a\nb
u
unicode
Unicode 模式
示例:/\u{1F600}/u → 😀
y
sticky
粘性匹配,从 lastIndex 位置开始
示例:/a/y → 从指定位置匹配