我如何gsub()除R中的指定字符以外的所有內容?gsub()除指定字符外的所有內容?
在我的問題,我有以下字符串...
"the quick brown fox jumps over a lazy dog"
我必須通過刪除除了「r」和「O」的所有字符生成一個新的字符串,並獲得以下輸出...
"roooro"
假設所有字符都是小寫字母,我該怎麼辦。我試過...
gsub(!"r","",gsub(!"o","",str1))
但是'!'不起作用。
我如何gsub()除R中的指定字符以外的所有內容?gsub()除指定字符外的所有內容?
在我的問題,我有以下字符串...
"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"
模式見 [*什麼正則表達式將每一個字符匹配除了逗號「」或分號';'](http://stackoverflow.com/questions/1409162/what-regex-will-match-every-character-except-comma-or-semi-colon)?。 –
實際上,我不會把它稱爲上述帖子的確切副本,因爲字符和實際要求(使用矢量)使這個問題不同(好吧,不確定是否唯一:))。 –