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

如何从大型日期数组中提取包含'2017-01'的日期字符串?

筛选日期数组中2017年1月的所有日期

下面给你几种实用的实现方案,包括你尝试的正则表达式方法:

方案1:正则表达式匹配

利用正则精准匹配以2017-01-开头的日期字符串,结合数组filter方法筛选:

const datesArray = [/* 你的日期数组 */];
const jan2017Dates = datesArray.filter(date => /^2017-01-/.test(date));
  • 正则^2017-01-的说明:
    • ^:锚定字符串开头,确保只有从开头就匹配2017-01-的日期才会被选中
    • 2017-01-:精确匹配目标年月的前缀

方案2:字符串前缀判断(更高效直观)

如果日期格式固定为YYYY-MM-DD,直接用startsWith()方法更简洁,性能也更好:

const datesArray = [/* 你的日期数组 */];
const jan2017Dates = datesArray.filter(date => date.startsWith('2017-01'));

这种方法无需正则,对固定格式的日期来说可读性更强,也省去了正则的额外解析开销。

方案3:分割日期字符串验证

通过分割日期字符串提取年月部分,再进行条件判断,灵活性更高:

const datesArray = [/* 你的日期数组 */];
const jan2017Dates = datesArray.filter(date => {
  const [year, month] = date.split('-');
  return year === '2017' && month === '01';
});

后续要筛选其他年月时,只需修改判断条件即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.08 10:01:21