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

如何从时间戳向量中提取小时和分钟信息

提取时间戳中的小时和分钟信息

方法一:使用gsub正则匹配

如果你想用gsub直接处理字符串,可以通过正则表达式精准捕获小时和分钟部分。针对你的时间戳格式,我们可以匹配T之后的HH:MM片段:

tstamps <- c("2023-03-06T18:43:52+00:00", "2023-03-06T18:44:45.547+00:00", "2023-03-06T18:47:04.643+00:00")

# 提取HH:MM
hour_min <- gsub("^.*T(\\d{2}:\\d{2}).*$", "\\1", tstamps)
hour_min

正则说明:

  • ^.*T:匹配字符串开头到T的所有内容
  • (\\d{2}:\\d{2}):捕获两位数字(小时)+ 冒号 + 两位数字(分钟)的片段
  • .*$:匹配捕获片段之后的所有内容
  • 替换为\\1,即保留捕获的小时和分钟部分

方法二:解析为日期时间对象(更推荐)

正则匹配依赖固定格式,若时间戳出现格式变化(如时区偏移不同)容易出错。更稳健的方式是先将字符串解析为日期时间对象,再格式化输出:

library(lubridate)

# 解析时间戳为datetime对象
dt <- ymd_hms(tstamps)
# 格式化为HH:MM格式
hour_min_dt <- format(dt, "%H:%M")
hour_min_dt

这种方法能自动处理毫秒、时区等细节,适用性更广。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.26 13:45:16