我们可以将正则表达式与R中的替换向量一起传递

时间:2015-12-10 05:02:50

标签: regex r gsub

我有一个字符串,我需要用替换向量替换,我想使用正则表达式。这件事有可能吗?

txt='foo bar'
nchar(txt)
ix='foo'
gsub(ix,'bar', txt) #### output
gsub(pattern = '[^ix]', replacement = 'bar', txt)

所需的输出是'bar bar'

其中ix是char向量,我如何使用带有正则表达式的模式是我真正的问题。

1 个答案:

答案 0 :(得分:1)

我们可以使用paste来连接或使用另一个字符串的字符串对象。

sub(paste0('^',ix), 'bar', txt)
#[1] "bar bar"

注意:在^内使用['[^ix]'具有不同的含义。