ChatGPT 写正则:先给通过与拒绝的例子
用简化编号规则检查正则的整串匹配、长度和大小写,不用一条复杂表达式猜测所有输入。

先定义规则,再要表达式
“帮我写一个编号正则”缺少可验证条件。先给允许字符、长度、匹配范围与运行语言,并提供应通过和应拒绝的样本。本文只校验一个虚构业务编号,不适用于邮箱、证件号码或复杂国际姓名校验。
一条可人工核对的规则
编号必须是两个大写英文字母,接连字符,再接四位ASCII数字。AB-0123应通过;ab-0123、AB-123、XAB-0123和AB-1234应拒绝。最后一个使用全角数字,按本练习规则不允许。前导零合法,不能擅自改成数值123。
Python中可用re.fullmatch(r'[A-Z]{2}-[0-9]{4}', value)判断整串。这里使用[0-9]明确只要ASCII数字;不能为了更短随意改成可能包含其他数字字符的写法。规则中的两个字母也不说明编号实际存在,只说明格式符合。
可复制提示词
用Python为以下编号规则写验证函数:两个大写英文字母、连字符、四位ASCII数字,必须整串匹配,不自动去空格或转大写。给出AB-0123应通过,以及ab-0123、AB-123、XAB-0123、AB-1234应拒绝的样本。解释匹配范围,并指出格式通过不证明业务记录存在。只生成代码和检查清单,不执行外部操作。
检查隐藏边界
再测空字符串、前后空格、尾部换行与None。前几种字符串应拒绝;None不是字符串,函数应明确返回False或按调用约定报错,不能未经说明自动变成文字。若业务希望自动清理空格,把清理与验证分两步,保留原始输入方便定位问题。
在目标语言里运行
同一正则在不同语言或调用函数下可能行为不同。不要只复制表达式,也要核对实际使用的是查找子串还是匹配整串。复杂规则先拆成清楚的条件,避免模型生成难以维护的表达式。本文样本的检查结论由规则推得,不冒充在你项目里通过的测试。
材料与核查说明
本文练习、提示词与图示由本站编辑原创,不是官方界面或模型实测。通用提问方法参考 OpenAI 官方文档,核查于2026年10月15日;具体样本的核对点来自本文给出的规则。实际结果仍须回到原始材料检查。
用Python为以下编号规则写验证函数:两个大写英文字母、连字符、四位ASCII数字,必须整串匹配,不自动去空格或转大写。给出AB-0123应通过,以及ab-0123、AB-123、XAB-0123、AB-1234应拒绝的样本。解释匹配范围,并指出格式通过不证明业务记录存在。只生成代码和检查清单,不执行外部操作。
OpenAI 官方提示词指南。范例由本站整理,不代表产品效果承诺。