审查一条正则表达式
收录 2026-10-31
逐段解释正则、找出回溯风险与边界情况,并给出更易读的替代。
下面有一条正则和它的用途。请:1)逐段解释每个部分匹配什么;2)列出三类会误匹配或漏匹配的输入;3)判断是否有灾难性回溯风险,给一个可能触发它的输入;4)给出更易读的写法(可以拆成多行或加注释);5)如果它用于安全校验,告诉我还缺什么。
本站原创
中文原文
使用建议
正则的问题几乎都在边界输入里。
可以这样改
- 要求它先复述需求与约束,确认无误再写代码。
- 让它给出最小改动 + 回滚方式,而不是整文件重写。
交付物(这次应拿到什么)
- 可运行的最小改动(含直接可用的代码块)
- 影响面清单:改了哪些文件、哪些调用点要跟着改
常见错法
- 一次让它改十个文件,最后分不清哪处改动导致了新问题。
- 只贴报错不贴代码和版本,拿到无法落地的修法。
输出验收(怎么判断能用)
- 改动可运行、可回滚,且没顺手改无关代码。
- 边界条件(空值、超长、并发)有说明或测试。
适用场景与注意
- 适合:让它先复述需求和约束,再给最小可运行改动。
- 注意:贴报错时同时给版本号与最小复现,否则它容易给出看似合理但不适配的写法。