从字符串中提取两个组合日期和时间

时间:2017-09-02 09:28:05

标签: r

你能告诉我如何从(" 2015-08-11 03:14:00 UTC - 2015-08-11 04:14:00 UTC")中提取日期和时间。请注意,此字符串包含两个日期和两次的时间间隔。我想将其分解为4个单独的字符串,例如日期1,时间1,日期2,时间2,然后将它们存储在4个单独的向量中。

感谢。

2 个答案:

答案 0 :(得分:2)

请尝试以下操作。

x <- "2015-08-11 03:14:00 UTC--2015-08-11 04:14:00 UTC"
y <- strsplit(x, "--")[[1]]

dates <- as.Date(y)
times <- strftime(y, format = "%H:%M:%S")

答案 1 :(得分:0)

您从未提及是否需要输入字符串中的功能日期和时间。如果您只需要解析时间戳的每个部分,那么使用gsub是一种选择。

x <- "2015-08-11 03:14:00 UTC--2015-08-11 04:14:00 UTC"
y <- unlist(strsplit(x, "--"))
dates <- sapply(y, function(x) gsub("(\\d{4}-\\d{2}-\\d{2}).*", "\\1", x))
times <- sapply(y, function(x) gsub(".*(\\d{2}:\\d{2}:\\d{2}.*)", "\\1", x))
dates
[1] "2015-08-11" "2015-08-11"
times
[1] "03:14:00 UTC" "04:14:00 UTC"

在这里演示:

Rextester