正则生成器在线 - AI 根据自然语言生成正则表达式
输入自然语言需求,在线生成可复制的正则表达式,并获得匹配解释、测试用例和常见误匹配提示。
功能特点
- 根据业务描述生成邮箱、URL、日期、日志字段等正则
- 输出正则逻辑解释、正反测试用例和误匹配风险
- 把自然语言需求拆成允许项、排除项、边界长度和目标引擎,再生成可回测的候选规则
- 支持 JavaScript、Python、PCRE 等常见正则风格
使用方法
- 描述需要匹配或排除的文本规则
- 选择正则引擎并补充标志和边界条件
- 检查测试用例后复制正则到代码或调试工具
示例输入
排除指定邮箱域名
匹配邮箱,但排除 qq.com 和 example.org适合生成带负向判断的邮箱规则,并检查域名大小写和子域名边界。 生成表达式是说明性候选,会随需求描述和模型响应变化,必须用样本验证。
提取 Nginx 状态码
从 Nginx access log 中提取 HTTP 状态码和请求路径适合先描述日志格式,再用测试用例验证空格、引号和异常路径。 生成表达式是说明性候选,会随需求描述和模型响应变化,必须用样本验证。
日期格式校验
匹配 2026-07-19 格式的日期,但月份和日期必须两位适合生成格式初稿;真实日期是否合法仍需要日期解析逻辑验证。 生成表达式是说明性候选,会随需求描述和模型响应变化,必须用样本验证。
允许项与排除项并列
允许:订单号 ORD- 加 8 位数字 排除:测试号 ORD-00000000 引擎:JavaScript适合把允许格式、明确排除项和目标引擎一起交给生成器,减少只根据单个正例生成过宽规则。 生成表达式是说明性候选,会随需求描述和模型响应变化,必须用样本验证。
本地密码规则与最小长度
password:必须包含大小写字母和数字 最小长度:12本地生成分支会根据 password 和最小长度生成候选;AI 生成则会把描述、引擎和 flags 发送到后端,结果必须分别验证。 生成表达式是说明性候选,会随需求描述和模型响应变化,必须用样本验证。
示例输出
排除指定邮箱域名
^(?![^@]+@(?:qq\.com|example\.org)$)[^\s@]+@[^\s@]+\.[^\s@]+$提取 Nginx 状态码
"(?<method>[A-Z]+) (?<path>\S+) [^\"]+" (?<status>\d{3})日期格式校验
^\d{4}-\d{2}-\d{2}$允许项与排除项并列
^ORD-(?!00000000)\d{8}$(候选规则;仍需在 JavaScript 中用正反例和业务样本验证)本地密码规则与最小长度
^(?=.*[a-z])(?=.*[A-Z])(?=.*\d).{12,}$
常见错误
- 自然语言需求不明确时,生成结果可能只覆盖示例,不覆盖完整业务边界。
- 正则可以校验字符串格式,但不能单独证明日期、邮箱或 URL 在业务上有效。
- 不同语言的转义、命名分组和 Unicode 支持不同,复制前要确认运行环境。
- 生成器输出的是候选表达式,不是业务结论;必须由人工补充反例、目标引擎和性能约束。
适用场景
- 邮箱正则生成
- 日志字段提取
- 表单校验规则
- 排除域名匹配
实操检查
验证本地邮箱模式
固定输入:描述 `match email`、最小长度 `8`、生成方式“生成正则”。步骤:打开 Regex Generator,填写描述,点击“生成正则”,读取输出框。预期结果:输出为 `^[\w.%+-]+@[\w.-]+\.[A-Za-z]{2,}
正则生成器在线 - AI 根据自然语言生成正则表达式 | ToolByte 。失败判断:输出为空、未生成该表达式,或页面出现错误。验证 AI 请求边界
固定输入:描述 `abc`,其余保持默认。步骤:点击“AI 生成正则”。预期结果:页面不发送生成请求,并提示先描述需要匹配的内容,因为描述长度小于 6。失败判断:仍向 `/api/ai/regex/generate` 发起请求,或没有提示。
页面专属核验
使用前与操作中
- 先写清允许项、排除项、边界长度和目标引擎;本地生成器只按常见关键词选择内置模板,未识别的描述会回退到邮箱模板,不能替代需求澄清。
- 区分本地初稿与 AI 生成:本地路径只对密码模板使用 `minLength`,页面选择的 engine/flags不会改变本地表达式;AI 路径会发送描述、引擎和 flags 到后端。
- 把生成结果送入正则测试器,用正例、反例、空值、超长、Unicode 和边界值验收;自然语言解释、测试用例和误匹配提示都需要人工复核。
结果出来后
- 描述邮箱、日期、Nginx IP 或密码时,输出是否确实命中预期内置模板;描述未覆盖的规则是否被发现为回退而非误认为定制生成?
- AI 返回的表达式是否能在所选引擎和 flags 下编译,并对必须排除的域名、日期合法性或日志边界给出真实反例?
- 复制前是否核对整串/局部匹配、捕获组、字符串转义和性能,并确认生成器的候选结果不是业务校验或授权规则本身?
相关工具
工具边界
- 自然语言生成只能提供候选规则,不能保证覆盖完整业务边界。
- 生成结果受模型与描述影响,并可能使用目标引擎不支持的语法。
与相似工具的区别
- 正则模板库:生成器根据新需求给出定制候选;模板库提供已知字段的起点,需求接近常见格式时更快也更可预测。
安全与兼容性
- 需求文本会发送给 AI 服务,提交前应移除客户样本、内部路径和访问凭据。
- 上线前必须在目标正则引擎验证正反例,并对超长近似失败输入检查回溯与 ReDoS 风险。
下一步排查
- 先把候选表达式放回正则测试器,用正例、反例和边界样本检查匹配范围。
- 再用 Regex Flavor 对照目标语言的命名组、环视、Unicode 和转义限制。
- 上线前用 Regex Benchmark 测试长度增长和近似失败输入,并由人工确认业务规则。
常见问题
生成的正则可以直接用于生产吗?
建议先用真实样本和反例测试,再确认运行引擎、性能和 ReDoS 风险。
为什么需要提供反例?
反例能帮助模型明确哪些内容必须排除,减少过宽匹配和误匹配。
为什么生成结果需要重新测试?
自然语言到正则存在歧义,模型可能遗漏边界、使用目标引擎不支持的语法或产生高回溯表达式;必须回到测试器和真实运行时验证。