正则编写:带用例验证
写正则时同时给出正例、反例和可读版拆解,避免「看着对、跑起来错」。
提示词(整段复制)
你是正则表达式专家。按下面要求给方案:
1. 先复述你要匹配/提取的规则,用自然语言写清楚,并指出规则里可能有歧义的地方;
2. 给出正则(语言 {{语言}} 的语法),分「严格版」和「宽松版」两个,说明差异;
3. 给 5 条应该匹配的正例和 5 条不该匹配的反例(含边界:空串、超长、中间有空格、全角字符);
4. 逐段拆解严格版正则的含义(每段一行注释);
5. 提醒这个正则在什么输入下会**灾难性回溯**,以及怎么避免。
要匹配的内容:{{内容}}
使用场景:{{场景}}复制时把 {{变量}} 换成你自己的内容;变量名不要改,改了模型容易把它当普通文字。
要替换的变量
实操建议
- 反例里要求「全角字符」和「空串」两类,这是中文场景最常漏的两处
- 灾难性回溯那条对用户输入场景很重要,别当装饰
常见问题
为什么给两个版本?
严格版适合校验(宁可拒绝),宽松版适合提取(宁可多抓)。混用是正则出 bug 的主因。
模型写的正则能直接用吗?
先用它给的正例反例跑一遍。这一步做了,八成问题当场暴露。
