Я хочу построить функцию, которая позволяет мне определять дни из любой строки. Каталог моих дней:
days<-c("Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday")
Поиск должен выполняться без учета регистра, но не должен включать частичные совпадения, такие как понедельник для понедельника или вторник для вторника.
Например, приведенная ниже строка должна давать я результаты, как указано ниже.
string<-"Wednesday mon Tuesday Thraus Friday"
Ожидаемый результат:
result<-c("Tuesday","Wednesday", "Friday")
Мой код:
days<-c("Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday")
string<-("WednesdayTuesday Mon Thraus Friday")
string<-strsplit(string, " ", fixed=TRUE)
string<-unlist(string)
result<- unique (grep(paste(tolower(string), collapse = "|"), tolower(days), value = TRUE))
# [1] "monday" "tuesday" "wednesday" "friday"
Как я могу использовать функцию grep
, чтобы получить ожидаемый результат? Спасибо!