You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何编写适配双场景的正则表达式以提取目标CNPJ编号?

适配两种CNPJ提取场景的正则方案

核心思路

直接匹配CNPJ的两种合法格式比拆分字符串更精准,能同时覆盖你提到的两个场景。CNPJ主要有两种呈现形式:带格式的(含.、/、-)和纯数字的(14位)。

可用正则表达式

\d{2}\.\d{3}\.\d{3}\/\d{4}-\d{2}|\d{14}

正则拆解

  • \d{2}\.\d{3}\.\d{3}\/\d{4}-\d{2}:专门匹配带格式的CNPJ,比如22.111.539/0003-58
  • |:逻辑或运算符,允许匹配两种格式中的任意一种
  • \d{14}:匹配14位纯数字的CNPJ,比如02886427000164

场景验证

  1. 针对文本 TAX ID - CNPJ+22.111.539/0003-58, CONTACT NAME
    匹配结果:22.111.539/0003-58,完全符合需求。
  2. 针对文本 CNPJ:02886427000164-CEP:04794-000**
    匹配结果:02886427000164,精准提取目标内容。

关于原拆分方案的说明

你之前用的拆分正则[ +:,#]在第二个场景失效,是因为CNPJ后面的-不在你的分隔符列表里。但如果直接把-加入分隔符(变成[ +:,#-]),会把第一个场景中CNPJ本身的-当成分隔符,导致提取内容不完整。因此直接匹配CNPJ格式是更可靠的选择。

内容的提问来源于stack exchange,提问作者Snehasis Rout

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.29 04:15:14