在字符串列表中查找单词
Find the words in list of strings
我有
words <- c("word1", "word")
text <- c("this is word1", "this is word2", "this is word4")
如果我使用 sapply(words, grepl, text)
给你正确和错误的答案,
相反,我怎样才能得到匹配的确切单词
这样答案就是
"this is word1"
我是 R 的新手,请原谅我提出这样愚蠢的问题。
欢迎任何想法。
一个选项是创建单词边界,然后使用 grep
来避免字符串的任何部分匹配,并且使用 value = TRUE
,它 returns 字符串而不是索引
grep(paste0("\b(", paste(words, collapse="|"), ")\b"), text, value = TRUE)
#[1] "this is word1"
我有
words <- c("word1", "word")
text <- c("this is word1", "this is word2", "this is word4")
如果我使用 sapply(words, grepl, text)
给你正确和错误的答案,
相反,我怎样才能得到匹配的确切单词
这样答案就是
"this is word1"
我是 R 的新手,请原谅我提出这样愚蠢的问题。 欢迎任何想法。
一个选项是创建单词边界,然后使用 grep
来避免字符串的任何部分匹配,并且使用 value = TRUE
,它 returns 字符串而不是索引
grep(paste0("\b(", paste(words, collapse="|"), ")\b"), text, value = TRUE)
#[1] "this is word1"