Regex 使用正则表达式提取可能包含或不包含时间的日期 请考虑以下 library(stringr) text <- c("blabla bla blabla bla 6:05, 15 July 2005, blabla bla", "blabla bla bla 7:06, 3 November 2006, blabla bla", "blabla bla 24 November 2006, blabla bla", "blabla bla blabla bla bla blabla bla") dates <- str_extract_all(text, ???) 库(stringr) text

Regex 使用正则表达式提取可能包含或不包含时间的日期 请考虑以下 library(stringr) text <- c("blabla bla blabla bla 6:05, 15 July 2005, blabla bla", "blabla bla bla 7:06, 3 November 2006, blabla bla", "blabla bla 24 November 2006, blabla bla", "blabla bla blabla bla bla blabla bla") dates <- str_extract_all(text, ???) 库(stringr) text,regex,r,stringr,Regex,R,Stringr,下次尝试显示您所尝试的内容。下面是一些工作,但可能会有更有效的正则表达式模式 pat <- paste0("([0-9]{1,2}:[0-9]{2}, )*[0-9]{1,2} (", paste(month.name, collapse = "|"), ") [0-9]{4}") pat ## [1] "([0-9]{1,2}:[0-9]{2}, )*[0-9]{1,2} (January|February|March|April|May|June|July|August|Septem

下次尝试显示您所尝试的内容。下面是一些工作,但可能会有更有效的正则表达式模式

pat <- paste0("([0-9]{1,2}:[0-9]{2}, )*[0-9]{1,2} (", paste(month.name, collapse = "|"), ") [0-9]{4}")

pat
## [1] "([0-9]{1,2}:[0-9]{2}, )*[0-9]{1,2} (January|February|March|April|May|June|July|August|September|October|November|December) [0-9]{4}"


regmatches(text, gregexpr(pat, text = text))
## [[1]]
## [1] "6:05, 15 July 2005"
## 
## [[2]]
## [1] "7:06, 3 November 2006"
## 
## [[3]]
## [1] "24 November 2006"
## 
## [[4]]
## character(0)
## 


# or using stringr package

str_extract_all(text, pat)
## [[1]]
## [1] "6:05, 15 July 2005"
## 
## [[2]]
## [1] "7:06, 3 November 2006"
## 
## [[3]]
## [1] "24 November 2006"
## 
## [[4]]
## character(0)
## 
pat