fitten code可将自然语言描述实时转为正则表达式:安装插件后,选中如“匹配中国大陆18位身份证号码”等描述,右键选择生成,即得符合gb 11643-1999的正则,支持js/python等语言直接使用,并可通过edit regex prompt修正描述重生成。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

你需要从一段中文文本里精准提取手机号、身份证号或邮箱地址,但手写正则太费时间还容易出错——Fitten Code能直接把“匹配11位数字且以1开头的手机号”这种自然语言描述,实时转成可运行的正则表达式。
安装并启动Fitten Code插件
打开VS Code → 左侧活动栏点击扩展图标(或按 Ctrl+Shift+X)→ 搜索框输入 【Fitten Code】 → 点击第一个由“Fitten”官方发布的插件 → 点击“安装”。
安装完成后重启VS Code,确保右下角状态栏出现“Fitten”小图标,表示插件已激活。
用自然语言生成正则表达式
新建一个空白文件(Ctrl+N),保存为 .txt 或 .js 后缀均可 → 在编辑器中输入任意自然语言描述,例如:“匹配中国大陸18位身份证号码,最后一位可能是X” → 选中这句话 → 右键 → 选择“Fitten Code: Generate Regex from Selection”。
插件会在光标下方插入一行正则:/^[1-9]d{5}(18|19|20)d{2}(0[1-9]|1[0-2])(0[1-9]|[12]d|3[01])d{3}[dXx]$/。这个表达式严格遵循GB 11643-1999标准,能识别年份范围、月份天数合法性,【不校验校验码算法,仅做格式初筛】。
如果描述模糊,比如只写“找邮箱”,它会生成较宽泛的 /S+@S+.S+/;想更准,就加限定词:“匹配带.edu.cn域名的教育邮箱”——生成结果自动收紧为 /[w.-]+@[w.-]+.(edu.cn)/。
在代码中直接使用生成的正则
方法一:JavaScript中赋值调用
把生成的正则复制进代码,写成 const idRegex = /^[1-9]d{5}(18|19|20)d{2}(0[1-9]|1[0-2])(0[1-9]|[12]d|3[01])d{3}[dXx]$/; → 后续用 idRegex.test(str) 即可验证。
方法二:Python中嵌入使用
将生成式中的 /.../ 去掉首尾斜杠,转义反斜杠:r'^[1-9]d{5}(18|19|20)d{2}(0[1-9]|1[0-2])(0[1-9]|[12]d|3[01])d{3}[dXx]$' → 直接传给 re.match() 或 re.search()。
注意:Fitten Code默认输出JS风格正则,若用于Java或Go,需手动将 d 改为 \d(因字符串字面量需双转义)。
修正生成结果的常见操作路径
第一步:选中已生成的正则表达式整行 → 按 Ctrl+X 剪切。
第二步:在编辑器顶部菜单栏点击“查看”→“命令面板”(或直接按 Ctrl+Shift+P)→ 输入“Fitten Code: Edit Regex Prompt”→ 回车。
第三步:在弹出的输入框中修改原始描述,例如把“11位手机号”改成“11位大陆手机号,排除170/171/172虚拟号段”→ 回车后新正则自动替换原内容。
这一步不能跳过提示框直接编辑文字——【必须通过Edit Regex Prompt触发重生成,否则修改后的正则不会被语法校验】。











