regex - 在R中使用strptime()从字符串中提取时间,并返回NA

标签 regex r date time strptime

我正在尝试从R中的字符串中提取时间,因此无法停止获取NA。我已经尝试过多种正则表达式标签的变体,但似乎无法解决这个简单的问题。任何帮助/说明,不胜感激。

这是我的示例代码:

> x
[1] "2/7/2013 7:43"
> class(x)
[1] "character"
> z <- strptime(x, "%H:%M")
> z
[1] NA

最佳答案

R不知道您的字符串是日期时间。因此,首先使它成为:

y <- strptime(x, format='%m/%d/%Y %H:%M')

如果您只是想获取日期,则可以执行以下操作:
strptime(x, '%m/%d/%Y') 

因为strptime会丢弃格式字符串之后的所有多余字符,但是由于该函数不知道从何处开始,因此您无法获取结尾的%H:%M

一旦它是正确的日期时间类,就可以对其进行操作:
strftime(y, '%H:%M')

我更喜欢使用as.POSIXlt而不是strptimeformat而不是strftime ...,但是它们大致相等。

关于regex - 在R中使用strptime()从字符串中提取时间,并返回NA,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21585138/

相关文章:

iphone - 如何使用NSRegularExpression从字符串中提取电子邮件地址

javascript - 用于检测非 ascii 字符的 Javascript 正则表达式

r - 将列添加到 R 中数据帧的数据帧列表中的特定行

c++ - Boost::regex 的奇怪结果

javascript - 无法让 RegExp 在 GWT 中匹配

r - 如何在 Rmarkdown 编译时跳过错误检查?

r - h2o.deeplearning 中的意外预测

mysql - Perl 和 MYSQL - 选择年-月-日小时 :minute:seconds (unix? ) 样式时间戳之间的数据

java - 将阿尔巴字符串日期转换为英文日期

javascript - 为什么 JavaScript 中的 getDay() 返回一周中的+1天?