我有一个各种字符串的向量,我想删除一个满足某种条件的组件。例如来自2012/EPS.WCR.PL6.NORM.0089
我想删除/ EPS。
我尝试过使用gsub,但是所有的P都被删除了。我想保留任何其他字符,如/,E,P,S单独,但如果它以这种确切的方式出现,则想要删除/ EPS。我想对矢量的每个元素说V,包含所有字符串。
提前致谢。
试试这个:
term <- '2012/EPS.WCR.PL6.NORM.0089'
gsub(pattern = '/EPS', x = term, replacement = "")
输出:
> gsub(pattern = '/EPS', x = term, replacement = "")
[1] "2012.WCR.PL6.NORM.0089"
我不知道你的代码出了什么问题,你从未向我们展示过,但sub
应该在这里工作:
x <- "2012/EPS.WCR.PL6.NORM.0089"
sub("/EPS", "", x)
[1] "2012.WCR.PL6.NORM.0089"
我也不知道你的确切替换逻辑是什么,例如应该替换/EPS
的条件是什么。根据这一点,上述模式可能必须改变。
我们可以使用sub
来匹配模式/EPS
并将其替换为空白(""
)
sub("/EPS", "", V)
#[1] "2012.WCR.PL6.NORM.0089"
V <- "2012/EPS.WCR.PL6.NORM.0089"
stringr
解决方案:
stringr::str_remove_all(string,"/EPS")
[1] "2012.WCR.PL6.NORM.0089"