TEXT LAB / LIVE正则测试加载中
正则表达式测试工具 · 文本匹配高亮与捕获结果 · 萤炬工具箱 · 工具说明与使用指南
正则表达式测试工具 · 文本匹配高亮与捕获结果 · 萤炬工具箱
正则测试提供 pattern、flags 与测试文本三栏,实时列出所有匹配项及捕获组,并能预览替换后的结果。写正则最费时的环节是「以为写对了但实际匹配不到」,在这里改一个字符就能立刻看到命中变化,比在代码里加日志反复跑快得多。适合调爬虫抓取规则、日志过滤条件和表单校验。使用 JavaScript 正则引擎,语法与 R…
正则测试提供 pattern、flags 与测试文本三栏,实时列出所有匹配项及捕获组,并能预览替换后的结果。写正则最费时的环节是「以为写对了但实际匹配不到」,在这里改一个字符就能立刻看到命中变化,比在代码里加日志反复跑快得多。适合调爬虫抓取规则、日志过滤条件和表单校验。
使用步骤
- 填入正则表达式,按需勾选 g、i、m 等 flags。
- 粘贴测试文本。
- 查看匹配列表与各捕获组的内容。
- 填入替换模板,预览替换结果。
功能与限制
- 使用 JavaScript 正则引擎,语法与 RegExp 一致。
- 写出灾难性回溯的表达式(如嵌套量词)可能导致页面卡顿,建议先用短文本试。
常见问题
- g 和 m 这两个 flag 有什么区别?
- g 是全局匹配,不加它只返回第一个结果;m 是多行模式,让 ^ 和 $ 匹配每一行的开头结尾而不是整段文本的首尾。两者常一起用来逐行处理。
- 为什么点号匹配不到换行?
- 默认点号不含换行符。需要跨行匹配要加 s(dotAll)flag,或者改用 [\s\S] 这种显式字符组。这是跨行抓取 HTML 时最常见的坑。
- 贪婪匹配和懒惰匹配怎么选?
- 默认贪婪,.* 会一路吃到最后一个可能的位置;加问号变懒惰(.*?),尽早收工。抓成对标签内的内容几乎总是要用懒惰版,否则会把中间所有标签一起吞掉。
- 这里测通了,在其他语言里为什么不行?
- 本工具用 JavaScript 正则引擎。Java、Python、PCRE 在命名分组语法、lookbehind 支持、转义细节上都有差异,跨语言使用时要按目标环境再验一次。