在R字符串中的特定位置插入char

时间:2017-05-31 13:50:29

标签: r

我有一个像这样的R字符串

a <- "(hi I am (learning R) )" 

我想在上面的字符串中添加一个字符“x”并使其像

一样
"(hi I am (learning R)x )" 

如何有效地使用R?

编辑:添加1个更多信息:        假设模式可以更改为起始字符串,但最后的2个括号将始终保持相同,我必须始终在它们之间插入x。

1 个答案:

答案 0 :(得分:2)

您可以使用sub,捕获您想要插入的唯一模式,然后使用反向引用添加x

sub("(R\\))", "\\1x", a)
# [1] "(hi I am (learning R)x )"

更新在字符串末尾的两个括号之间插入字符,最简单的方法是匹配一个模式并将其替换为您想要的一个:

sub("\\) \\)$", "\\)x \\)", a)
# [1] "(hi I am (learning R)x )"