我有一个很长的R脚本,我需要从中提取许多日期。我把脚本作为一个文本文件,并试图找到日期与regex环顾函数。
下面是一个包含日期的代码块示例:
Chamber1_3 <- subset(Chamber1Exp, Chamber1Exp$RealTime>=as.POSIXct("2019-05-21 06:01:45") &
Chamber1Exp$RealTime<= as.POSIXct("2019-05-21 06:23:58"))
plot(Chamber1_3$RealTime[Chamber1_3$Status=="PRE"],Chamber1_3$N2O_ppm[Chamber1_3$Status=="PRE"],
xlim=as.POSIXct(c("2019-05-21 06:01:45", "2019-05-21 06:23:58")),
ylim=c(.34,.35))
我想恢复&;2019-05-21 06:01:45&;和2019-05-21 06:23:58。它们在代码中重复了两次,我只想要它们一次。
我正在RStudio的RegExplain插件中测试RegEx片段。我试图使用查找功能来捕获公共文本'as.POSIXct('
之后的日期我想这应该可以,但我什么也没得到。
(?<=Xct(")(?=")
建议吗?
我们可以提取所有的4个数字- 2个数字- 2个数字一个或多个空格2个数字:2个数字:2个数字,然后取消列表,只取唯一的值
your_vec <- c('Chamber1_3 <- subset(Chamber1Exp, Chamber1Exp$RealTime>=as.POSIXct("2019-05-21 06:01:45") &
Chamber1Exp$RealTime<= as.POSIXct("2019-05-21 06:23:58"))
plot(Chamber1_3$RealTime[Chamber1_3$Status=="PRE"],Chamber1_3$N2O_ppm[Chamber1_3$Status=="PRE"],
xlim=as.POSIXct(c("2019-05-21 06:01:45", "2019-05-21 06:23:58")),
ylim=c(.34,.35))')
unique(unlist(str_extract_all(your_vec, '[0-9]{4}-[0-9]{2}-[0-9]{2}\s+[0-9]{2}:[0-9]{2}:[0-9]{2}')))
leaving:
[1] "2019-05-21 06:01:45"
[2] "2019-05-21 06:23:58"