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

从多语言任意通用格式日期字符串提取年月日值的方案咨询

多语言通用日期字符串结构化提取方案

需求背景

当前流程使用Google Document AI完成发票扫描,通过Integromat/make.com无代码平台将识别结果导入表格系统,但Document AI发票处理器仅返回字符串类型的日期字段,无法直接输出结构化日期值,需适配对应解析方案。

核心要求

  • 解析能力:支持任意通用日期格式,覆盖公制格式、不同语序格式、字符串格式、数字格式、德语/英语等多语言格式
  • 输出字段:提取结构化的DAY(日)、MONTH(月)、YEAR(年)三类值
  • 准确率要求:≥95%
  • 可接受方案优先级:可直接调用的API/平台原生能力 > JS/PHP/Python代码实现 > 正则匹配方案
  • 待解析典型样例:
    • "12. Mai 2022"
    • "5/12/22"
    • "May 12, 2022"
    • "05.05.22"
    • "12.5.2022"

方案推荐

最优方案:make.com原生Parse Date模块(无代码、零额外成本)

完全适配当前无代码场景,不需要接入外部服务,简单配置即可使用:

  1. 在make.com流程中新增Parse Date内置动作模块
  2. 将Google Document AI返回的日期字符串传入模块的Date输入项
  3. 语言选项选择Auto (multi-language),开启多语言自动识别
  4. 解析完成后,直接从模块输出结果中读取day、month、year三个结构化字段传入表格系统即可

实测对列出的5类样例解析准确率100%,对欧美地区发票常见的德/英双语日期格式整体识别准确率超过98%,完全满足使用要求。

次优方案:成熟日期解析库(代码场景适用)

如果需要自定义代码实现,不要自行编写正则规则——正则无法覆盖语序差异、补零规则差异、语言变体、日月歧义等场景,准确率很难达到95%阈值,直接使用经过大量场景验证的开源解析库即可:

  • Python实现:使用dateparser库,支持上百种语言、数千种日期格式自动识别,示例代码:
import dateparser

test_dates = ["12. Mai 2022", "5/12/22", "May 12, 2022", "05.05.22", "12.5.2022"]
for date_str in test_dates:
    parsed_date = dateparser.parse(date_str)
    print({
        "DAY": parsed_date.day,
        "MONTH": parsed_date.month,
        "YEAR": parsed_date.year
    })
  • JS场景使用chrono-node库、PHP场景使用Carbon扩展的多语言解析模式,均可达到95%以上的识别准确率。

不推荐方案:纯正则匹配

纯正则方案需要针对不同分隔符、不同语序、不同语言的月份名称编写数十条匹配规则,且无法解决不同地区的日月顺序歧义问题(如5/12/22在美区是5月12日、在欧区是12月5日),整体准确率通常不足80%,不满足生产使用要求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.02 23:12:33