要用codeium准确解释正则,必须明确匹配目标、边界(如^$)、大小写、多行等条件;开头声明“用于验证整个字符串”并保留原始转义;用反例和边界样例辅助推断;注明语言环境与标志位(如/gi),必要时说明转义差异。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

要用Codeium准确解释一个正则表达式,必须让模型清楚知道你要匹配什么、不匹配什么、边界在哪、是否区分大小写、是否允许多行等关键限制条件,漏掉任一条件都可能导致解释错误或遗漏。
明确写出完整匹配范围
在提示词开头就声明“这个正则用于验证整个字符串”,并显式加上锚点说明。例如写:“解释这个正则:^1[3-9]d{9}$,它用于【严格验证11位中国大陆手机号,必须从头到尾完全匹配,不能是字符串中的一部分】”。如果不提“整个字符串”,Codeium可能默认按搜索模式解释,忽略^和$的作用。
直接复制正则时保留原始转义——比如Python里写r"^1[3-9]d{9}$",不要手动改成"^1[3-9]d{9}$",否则d会被当成普通字母d,解释结果全错。
逐条列出不可接受的反例
方法一:用“以下输入应被拒绝”带出典型非法样本
在提示词中另起一行写:“以下输入应被拒绝:1234567890、01234567890、123456789012、1a345678901”。这比只说“不能有字母”更有效,Codeium能据此反推字符类约束和长度边界。
方法二:用“特别注意”强调易混淆边界
加入一句:“特别注意:11111111111(十一个1)应被接受,但1111111111(十个1)和111111111111(十二个1)必须拒绝”。这句话能让Codeium聚焦于{9}背后的逻辑——它实际对应的是第二位之后的9位数字,总长11位。
声明运行环境与标志位
第一步:指出正则所处语言环境。例如:“该正则用于JavaScript的String.prototype.match()调用”。
第二步:说明是否启用全局g、忽略大小写i、多行m等标志。如:“使用/gi标志,因此需解释大小写不敏感及全局匹配行为”。【若未声明标志位,Codeium默认按无标志处理,对i/g/m相关元字符的解释会完全失效】
第三步:确认是否需要说明转义差异。例如:“此正则将嵌入Python f-string,需指出d在f-string中是否需双写为\d”。











