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

如何使用DataWeave为匹配正则的日期字符串追加'as Date'

给JSON字符串中的日期追加'as Date'标记的DataWeave实现

直接用DataWeave的正则替换就能搞定这个需求,不用依赖Java的replaceAll函数。核心思路是匹配JSON字符串里所有带双引号的YYYY-MM-DD格式日期,然后在日期后面追加' as Date'标记,同时保留原日期内容。

实现代码

%dw 2.0
import dw::core::Strings
input payload String
output application/json skipNullOn="everywhere"
---
Strings.replace(payload, /"(\d{4}-\d{2}-\d{2})"/, "\"$1\" as Date")

代码说明

  • 正则表达式/"(\d{4}-\d{2}-\d{2})"/:专门匹配被双引号包裹的YYYY-MM-DD格式日期,括号里的\d{4}-\d{2}-\d{2}是日期的正则规则,外层的双引号确保只匹配JSON里的日期字符串值。
  • 替换模板"$1" as Date:$1代表正则捕获到的原日期内容,替换后会保留原日期,同时在后面追加as Date标记。

输入输出示例

输入(字符串格式的JSON)

[{"customer": "ACME inc", "FirstOrderDate": "2025-01-01", "LastOrderDate": "2025-05-25", "ZipCode": "01234"}]

输出

[{"customer": "ACME inc", "FirstOrderDate": "2025-01-01" as Date, "LastOrderDate": "2025-05-25" as Date, "ZipCode": "01234"}]

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.12 22:32:03