Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
372 views
in Technique[技术] by (71.8m points)

r - Extract date text from string

I would like to extract date from the following list of text:

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

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

The result would be a list or a data frame:

 28-Dec-2018
 20-Nov-2018

Thanks

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

Here is a base R option using lapply and gsub:

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


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

2.1m questions

2.1m answers

60 comments

57.0k users

...