从字符串中提取日期文本

时间:2018-01-02 13:21:28

标签: r

我想从以下文字列表中提取日期:

[[1]]
[1] "TAX INVOICE      28 Dec 2018       PO2222"

[[2]]
[1] "TAX INVOICE      20 Nov 2018       PO11111"

结果将是列表或数据框:

 28-Dec-2018
 20-Nov-2018

谢谢

1 个答案:

答案 0 :(得分:4)

以下是使用lapplygsub的基本R选项:

lst <- list("TAX INVOICE      28 Dec 2018       PO2222",
            "TAX INVOICE      20 Nov 2018       PO11111")

lapply(lst, function(x) gsub(".*(\\d{2} \\w{3} \\d{4}).*", "\\1", x))
[[1]]
[1] "28 Dec 2018"

[[2]]
[1] "20 Nov 2018"

Demo