这个问题在这里已经有了答案:
What regex will match every character except comma ',' or semi-colon ';'?
(4 个回答)
5年前关闭。
我如何 gsub() 除了 R 中的指定字符之外的所有内容?
在我的问题中,我有以下字符串...
"the quick brown fox jumps over a lazy dog"
我必须通过删除除 'r' 和 'o' 之外的所有字符来生成一个新字符串,并获得以下输出...
"roooro"
假设所有字符都是小写,我该怎么做。我试过...
gsub(!"r","",gsub(!"o","",str1))
但是“!”不起作用。
最佳答案
我们需要使用 ^
内[
匹配除 ro
之外的所有字符.在这里,[^ro]+
意味着匹配一个或多个不是 'r' 或 'o' 的字符并将其替换为空白 ( ""
)。
gsub("[^ro]+", "", str1)
#[1] "roooro"
如果我们有一个值向量,我们可以用
paste
创建模式v1 <- c("r", "o")
gsub(paste0("[^", paste(v1, collapse=""), "]+"), "", str1)
#[1] "roooro"
关于regex - gsub() 除指定字符外的所有内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38712946/