返回文章列表

Regex 测试+解释:匹配组、替换预览和 ReDoS 风险怎么一起看

围绕接口校验、日志提取和文本替换,说明如何测试正则、查看命名分组、导出匹配 JSON 并识别常见 ReDoS 风险。

这个页面解决什么问题

正则上线前要同时看三件事:能不能匹配、分组是不是你要的、长文本上会不会拖慢系统。这个页面把匹配高亮、命名分组、替换预览、执行耗时和 ReDoS 提示放在同一个结果里,适合开发联调和日志提取。

推荐使用步骤

  1. 先从常用模式选择接近业务的表达式,再替换成自己的字段规则。
  2. 填写 flags 时保留 g,按需要增加 i、m、s;不要随意开启会改变语义的标志。
  3. 粘贴真实样本文本,最好包含正常值、空值、边界值和错误值。
  4. 查看匹配明细中的位置、长度、分组和命名分组,确认不会多匹配或少匹配。
  5. 如果用于生产接口校验,把长文本或异常输入也放进来测试 ReDoS 风险提示。

输入输出示例

输入

正则:(?<phone>1[3-9]\d{9});flags:g;测试文本:张三 13812345678,李四 15900001234。

输出

结果显示 2 处匹配、位置、长度、文本和命名分组 phone,并给出 \d、字符集合、命名分组和量词解释。

关键检查点

常用模式

手机号、邮箱、URL、IPv4、日期、身份证、UUID、JWT 可以从正则库直接填入,再按业务微调。

分组检查

命名分组会在匹配明细里展示,适合检查 phone、email、id 这类抽取字段。

替换预览

填写替换模板后会显示替换后的完整文本,适合上线前确认不会误删上下文。

性能风险

嵌套量词、过度贪婪和复杂回溯会提示风险;复杂规则仍建议用真实长文本压测。

和普通同类工具的区别

普通正则测试只给高亮结果,这个页面同时给匹配表、命名分组、替换预览、执行耗时和风险解释,更适合把规则带进开发流程。

FAQ

解释结果是 AI 吗?

不是。解释基于本地规则拆解常见正则语法,稳定、可重复且无需联网。

支持命名分组吗?

支持。浏览器支持的命名分组会在匹配明细中显示。

能检测所有 ReDoS 吗?

不能。工具会提示常见高风险写法,复杂表达式仍建议结合真实长文本压测。

替换预览可以直接复制吗?

可以。填写替换模板并测试后,可复制替换结果。

相关工具链