我想从给定文本中提取日期,日期可以是任何格式 2018年4月10日,10-04-2018,10/04 / 201,2018 / 04/10,04.10.2018和其他格式一样....
我有新闻数据,想要从文本中提取日期
例如:我的朋友将于2018年7月10日或10/07/2018来临
我想从给定的文字中提取日期
请帮助
提前致谢
答案 0 :(得分:2)
我们使用str_extract
提取它,然后使用anydate
获取格式
library(anytime)
library(stringr)
anydate(str_extract_all(str1, "[[:alnum:]]+[ /]*\\d{2}[ /]*\\d{4}")[[1]])
#[1] "2018-07-10" "2018-10-07"
str1 <- "My Friend is coming on july 10 2018 or 10/07/2018"
答案 1 :(得分:0)
提出的解决方案由于以下原因而失败,没有明显的原因:
txt =“实时报道,美国薪资数据显示失业率大幅上升,此前综合PMI数据显示,英国商业活动在Covid-19锁定后三月跌至纪录低位” parsedate :: parse_date(txt)
答案 2 :(得分:0)
parsedate可以很好地解决这些问题。
library(parsedate)
dates = c("April 10 2018", "10-04-2018", "10/04/2018", "2018/04/10", "04.10.2018")
parsedate::parse_date(dates)
[1] "2018-04-10 UTC" "2018-10-04 UTC" "2018-10-04 UTC" "2018-04-10 UTC" "2018-10-04 UTC"
答案 3 :(得分:0)
解析是一个不错的程序包,但它失败并显示以下字符串
txt = "Live coverage as American payrolls data shows big rise in unemployment, after composite PMI data shows UK business activity sunk to a record low in March following the Covid-19 lockdown"
> parsedate::parse_date(txt) [1] "2020-03-19 UTC"
[1] "2020-03-19 UTC"