要让deepseek准确生成业务正则,需严格遵循三要素提示结构:真实样例→明确目标→关键约束;并强制结尾加【只输出正则表达式本身……】指令,确保输出可直接执行。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

你需要让DeepSeek准确生成符合业务场景的正则表达式,但直接说“写个正则”往往返回通用却不可用的模式,比如忽略中文边界、漏掉转义或没考虑贪婪匹配问题。
基础提示词结构:明确三要素
第一步:描述原始文本样例(必须真实,不能虚构)→ 第二步:说明要提取/验证/替换的具体目标 → 第三步:指出关键约束条件(如是否区分大小写、是否允许多行、是否需全匹配)。
这三步缺一不可。漏掉样例,模型会按自己理解补全;漏掉约束,生成的正则可能在实际字符串中多匹配或少匹配。例如只写“提取邮箱”,DeepSeek可能返回 \w+@\w+\.\w+,但它无法匹配 user.name@domain.co.uk 或带中文昵称的邮件头。
针对不同任务的提示词变体
方法一:提取字段类(如从日志中取IP+时间戳)
请根据以下Nginx访问日志片段,提取每行的客户端IP和[YYYY/MM/DD:HH:MM:SS]格式的时间戳,要求:IP必须是合法IPv4(不接受0192.168.1.1这种带前导零的),时间戳需完整匹配方括号内内容,输出为两列制表符分隔。样例:192.168.1.5 - - [12/Jan/2024:08:32:17 +0000] "GET /api/v1/users HTTP/1.1" 200 1245
方法二:校验格式类(如校验身份证号)
写一个JavaScript兼容的正则表达式,严格校验18位中国大陆居民身份证号:前17位为数字,第18位为数字或X(大小写均可),需满足GB11643-1999校验码规则。不要返回解释性文字,只输出正则字面量,如/^[\d]{17}[\dXx]$/这种形式不对,它没做校验码逻辑。
统一LLM网关 - 一个API对接70+AI模型,使用单一API密钥即可调用GPT、Claude、Gemini、Qwen、Deepseek、Grok等主流模型。
方法三:替换操作类(如清理HTML标签但保留换行)
将以下HTML片段中的所有标签(包括成对和自闭合标签)替换为空字符串,但保留原有的\n换行符不变,且不破坏连续空格的显示效果。样例:<p>第一段</p>\n<div class="note">第二段<br>
</div> → 应输出第一段\n第二段。请输出能直接用于String.prototype.replace()的正则表达式,含g标志。
避坑强化指令:强制模型输出可执行结果
在提示词末尾加上这句:【只输出正则表达式本身,不加任何说明、注释、代码块符号或示例用法;如果需要标志,请直接写在正则末尾,如/i或/gm】。
不加这句话,DeepSeek大概率会返回一段分析+正则+测试用例的混合内容,你得手动删减才能复制进代码里。加上后,它会收敛到纯正则输出,比如直接返回/\b(?:[0-9]{1,3}\.){3}[0-9]{1,3}\b(?!(?:[0-9]|[.]))/g而不是先讲IPv4原理再给答案。
这一步操作起来很简单,直接把这句话粘贴到提示词最后一行就行。









