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

如何从csv.gz格式文件名中提取8位年月日格式日期

文件名日期提取方案

原代码问题

  • 正则语法错误:.在正则中是通配符,原写法.gz/.csv会匹配任意字符加gz/csv的内容,存在误匹配风险,应该转义为\\.并加$限定只匹配文件名末尾的后缀。
  • 取值逻辑错误:去掉.csv.gz后缀后,文件名末尾是14位完整时间戳(8位年月日+6位时分秒),直接调用RIGHT()取右8位,拿到的是日期后2位加时分秒的错误结果,不是目标8位年月日。

修复方案

方案1(推荐):直接匹配时间戳提取

无需提前处理后缀,直接提取文件名中的14位时间戳后取前8位即可,兼容性更强:

date_key = LEFT(regexp_extract(filename, '(\\d{14})', 1), 8)

方案2:基于原有代码调整

保留替换后缀的逻辑,调整取值规则,先取末尾14位完整时间戳再取前8位:

date_key = LEFT(RIGHT(regexp_replace(regexp_replace(filename,'\\.gz$',''),'\\.csv$',''), 14), 8)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 06:36:03