gsub不替换R中的链接

时间:2014-07-16 21:03:04

标签: r gsub

大家好我想做一些简单的事情。出于某种原因,gsub是一个混蛋。

vector <- c("http://aa.bb.com/ss/who/searchpage/tab/message?sort_by=-topicPostDate&page=YOU","http://aa.bb.com/ss/who/searchpage/tab/message?filter=labels location&location=oh-my:DID IT","BLAH BLAH")


subs <- c("http://aa.bb.com/ss/who/searchpage/tab/message?sort_by=-topicPostDate&page=",
          "http://aa.bb.com/ss/who/searchpage/tab/message?filter=labels location&location=oh-my:")

gsub(paste(subs,collapse = "|"),"",vector, fixed = TRUE)

我想用gsub说的是将sub中的第1项或第2项替换为&#34;&#34;如果在矢量中找到 任何人?它不必涉及gsub。我只想要一行代码,如果你看到这个或那个或那个&#34;&#34;在一个字符串向量。

1 个答案:

答案 0 :(得分:0)

使用|表示&#34; OR&#34;在正则表达式中,您需要fixed=F

但是,模式中的?意味着:之前出现一次或零次,而不是根据需要匹配文字?

解决办法的一种方法是逃避?中的subs

subs <- gsub('?', '\\?', subs, fixed=T)
gsub(paste(subs,collapse = "|"), "", vector, fixed=F)
# [1] "YOU"       "DID IT"    "BLAH BLAH"