在线测试正则匹配
| 写法 | 含义 |
|---|---|
. | 任意单个字符(默认不含换行) |
\d | 数字,等价于 [0-9] |
\D | 非数字 |
\w | 单词字符:字母、数字、下划线 |
\W | 非单词字符 |
\s | 空白:空格、Tab、换行等 |
\S | 非空白字符 |
\t | Tab 制表符 |
\n | 换行符 |
| 写法 | 含义 |
|---|---|
^ | 字符串或行的开头 |
$ | 字符串或行的结尾 |
\b | 单词边界 |
\B | 非单词边界 |
[abc] | 匹配 a、b 或 c 任一字符 |
[^abc] | 匹配除 a、b、c 外的字符 |
[a-z] | 匹配小写字母范围 |
(abc) | 捕获分组,可引用或提取 |
(?:abc) | 非捕获分组,只分组不保存 |
| 写法 | 含义 |
|---|---|
* | 前面元素出现 0 次或多次 |
+ | 前面元素出现 1 次或多次 |
? | 前面元素出现 0 次或 1 次 |
{n} | 恰好 n 次 |
{n,} | 至少 n 次 |
{n,m} | n 到 m 次之间 |
*? +? | 非贪婪匹配,尽可能少匹配 |
| | 或,匹配左侧或右侧表达式 |
g 全局匹配
i 忽略大小写
m 多行模式(^ $ 按行匹配)
s dotAll(. 可匹配换行)
u Unicode 模式
y 粘性匹配
特殊字符 . * + ? ^ $ { } ( ) [ ] \ | 在正则中有特殊含义,匹配字面量时需加反斜杠转义,例如 \. 匹配句点。
点击下方示例可自动填入上方「正则」输入框,方便快速测试。
提示:JavaScript 中构造正则时使用 new RegExp(pattern, flags);在字符串字面量里反斜杠需写成 \\。复杂场景建议先用本工具验证,再写入代码。