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

Google Sheets中如何用REGEXEXTRACT提取字符串的第二个日期?

Google Sheets提取字符串中第二个日期的解决方案

原公式=REGEXEXTRACT(A3,"(\d{1,2}\s+[A-Za-z]+\s\d{2,4})")仅返回第一个匹配的日期,以下是两种可行的解决方法:

方法1:利用日期分隔符精准匹配

针对你字符串中日期以/分隔的特点,直接定位第二个日期:

=REGEXEXTRACT(A3,"\d{1,2}\s+[A-Za-z]+\s\d{2,4}\s*\/\s*(\d{1,2}\s+[A-Za-z]+\s\d{2,4})")
  • 正则逻辑:
    • 先匹配第一个日期格式\d{1,2}\s+[A-Za-z]+\s\d{2,4}
    • 匹配日期间的/(允许前后有空格:\s*\/\s*)
    • 用括号捕获第二个日期作为返回结果

方法2:通用提取第N个匹配项

如果日期分隔不固定,可通过数组索引提取第二个匹配结果:

=INDEX(REGEXEXTRACT(A3,"(?:.*?(\d{1,2}\s+[A-Za-z]+\s\d{2,4})){2}"),2)
  • 逻辑说明:
    • (?:.*?(\d{1,2}\s+[A-Za-z]+\s\d{2,4})){2}:重复匹配两次,每次捕获一个日期(?:为非捕获组,避免无效匹配)
    • INDEX(...,2):从捕获的日期数组中选取第二个元素

也可以先移除第一个日期及之前的内容,再提取剩余部分的第一个日期:

=REGEXEXTRACT(REGEXREPLACE(A3,".*?"&REGEXEXTRACT(A3,"\d{1,2}\s+[A-Za-z]+\s\d{2,4}"),""),"\d{1,2}\s+[A-Za-z]+\s\d{2,4}")

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.01 11:11:09