开发者工具 / 20
正则标记解释器和模式分析工具
将JavaScript正则表达式拆解为通俗易懂的标记说明,涵盖捕获组、字符类和量词。
正则标记解释器和模式分析工具: TOEA会将正则表达式模式解析为单独的AST标记,并为每个组成部分生成通俗易懂的说明。 完全在浏览器中本地运行,文件不会上传到服务器。
- 类别
- 开发者工具
- 使用次数
- 在浏览器中
- 费用
- 免费·无需注册
- 可用性
- 可直接使用
完全在浏览器中运行
模式标记说明
| 标记 | 类别 | 说明 |
|---|---|---|
/i | 正则标志 | 已启用标志:不区分大小写的匹配。 |
^ | 锚点 | 匹配字符串或行的开头。 |
( | 分组 | 开始捕获组#1。 |
[a-z0-9_\.-] | 字符类 | 匹配字符集[a-z0-9_\.-]中的任意单个字符。 |
+ | 量词 | 匹配前一个标记1次或多次(贪婪)。 |
) | 分组 | 结束捕获组或非捕获组。 |
@ | 字面量 | 匹配字面字符'@'。 |
( | 分组 | 开始捕获组#2。 |
[\da-z\.-] | 字符类 | 匹配字符集[\da-z\.-]中的任意单个字符。 |
+ | 量词 | 匹配前一个标记1次或多次(贪婪)。 |
) | 分组 | 结束捕获组或非捕获组。 |
\. | 字符类 / 转义 | 转义字符'.' |
( | 分组 | 开始捕获组#3。 |
[a-z\.] | 字符类 | 匹配字符集[a-z\.]中的任意单个字符。 |
{2,6} | 量词范围 | 匹配明确的范围次数{2,6}。 |
) | 分组 | 结束捕获组或非捕获组。 |
$ | 锚点 | 匹配字符串或行的末尾。 |
问号的多种作用
?的含义取决于它所在的位置。放在字符或分组之后时,它会使该字符或分组变为可选:colou?r。放在另一个量词之后时,它会让该量词变为懒惰匹配,尽可能少地匹配内容:<.+?>会在第一个>处停止,而<.+>会一直匹配到该行最后一个>。放在分组开头时,它会引入特殊语法:(?:…)创建不捕获内容的分组,(?=…)和(?!…)执行前瞻,(?<name>…)为分组命名。请结合?前面的内容一起理解它的作用。
简写字符类仅支持ASCII
在JavaScript中,\d只匹配0–9,\w只匹配无重音的拉丁字母、数字和下划线。因此,\w+会在café中找到caf,而\b会将带重音字母视为单词边界。对于其他语言的文本,请在使用u标志时采用[\p{L}\p{N}_]+这样的Unicode属性类。在正则表达式测试工具中,将修正后的模式用于真实示例文本进行测试。
模式和字符串中的转义
有14个字符具有特殊含义,需要使用反斜杠才能匹配其字面值:. * + ? ^ $ { } ( ) | [ ] \,此外,在/…/字面量中还包括/。使用new RegExp从字符串构建模式时,每个反斜杠都需要加倍,因此\d+会变成"\\d+"。如果某个模式作为字面量有效,但从字符串构建时无效,通常是因为过程中丢失了一个反斜杠。
使用方法
- 输入或粘贴JavaScript正则表达式(例如/^[a-z0-9]+$/i)。
- 点击“解释正则表达式”。
- 查看拆解表,了解锚点、字符类、组和标志。
隐私与限制
正则表达式的解析和说明完全在浏览器中进行。
相关工具
常见问题
哪些正则表达式功能会得到说明?
可说明锚点(^、$)、字符类(d、w、s、[a-z])、量词(*、+、?、{m,n})、捕获组和标志。
它会验证正则表达式语法吗?
会,语法错误会被立即捕获并报告。
免费工具·使用在浏览器中次·无需账户