R:简单的关键字检测

R: simple keyword detection

我想检查一组 "keywords" 中的 任何 是否出现在字符串中。因此,对于下面的 "text",结果应该是 TRUE(或 1),对于 text_2,结果应该是错误(或 0)。

keywords <- c("one", "two", "three", "four") #set of keywords
text <- "Blah blah one blah two" 
text_2 <- "Blah blah" 

我尝试了 str_detect 的一些变体,但我卡住了。

因此,例如,我知道我没有正确使用此功能但是:

> keywords <- c("motor", "car", "ford") #list of keywords
> text <- "I am looking to buy a ford" #string I'd like to check
> ifelse(str_detect(text, pattern = keywords), 1, 0)
[1] 0 0 1

有没有更好的方法?

试试这个...

any(sapply(keywords,grepl,text))
[1] TRUE

any(sapply(keywords,grepl,text_2))
[1] FALSE