使用R编程语言,我希望能够使用gsub函数删除除两个或三个指定单词以外的所有字符。
我尝试了多种使用后向查找\\ bMyWord \\ b和脱字符号^的方法。
gsub("fbnmobile.*", "" , "fbnmobile akinremi temitope akinfemi gotvnspectran fbn akinremi temitope a and akinsanya arinola o ")
所需的输出:
“ fbnmobile gotvnspectran fbn”
我想要一个模板,以便在删除所有其他字符时可以添加或删除整个单词。在这种情况下,我将指定删除单词“ fbnmobile”,“ gotvnspectran”和“ fbn”以外的所有字符。
此外,我很乐意接受有关R的正则表达式权威指南的建议。
答案 0 :(得分:3)
提取可能会更容易。在|
中的str_extract_all
中指定要用OR(stringr
)提取的单词模式,然后paste
将提取的单词提取为单个字符串
library(stringr)
paste(str_extract_all(str1, "\\b(fbnmobile|gotvnspectran|fbn)\\b")[[1]], collapse=" ")
#[1] "fbnmobile gotvnspectran fbn"
或使用gsub
gsub("\\s{2,}", " ", trimws(gsub("\\b(fbnmobile|gotvnspectran|fbn)\\b(*SKIP)(*F)|\\w+", "", str1, perl = TRUE)))
#[1] "fbnmobile gotvnspectran fbn"
str1 <- "fbnmobile akinremi temitope akinfemi gotvnspectran fbn akinremi temitope a and akinsanya arinola o "