插入在特定位置R中字符串的字符
我有A R串这样插入在特定位置R中字符串的字符
a <- "(hi I am (learning R))"
我想在上面的字符串添加字符“x”,并使它像
"(hi I am (learning R)x)"
我怎样才能有效地使用R?
编辑:添加1更多信息: 假设模式可以启动字符串,但到底最后2架将保持相同的所有时间而改变,我必须插入X它们之间所有的时间。
您可以使用sub
,捕获你要在其后插入,然后使用反向引用添加x
独特的模式:
sub("(R\\))", "\\1x", a)
# [1] "(hi I am (learning R)x)"
更新上在的结尾插入两个支架之间的字符字符串,最简单的将匹配一个模式,并将其替换为您所需的模式:
sub("\\) \\)$", "\\)x \\)", a)
# [1] "(hi I am (learning R)x)"
添加1个更多信息:模式可以改变为开始字符串,但最后2个括号到最后将始终保持不变,我必须一直在它们之间插入x。 – HiveRLearner
感谢您的回复,但详细补充说我不知道早期的字符串模式。我只知道最后2个支架模式。有没有什么办法可以使用这个信息,我必须在第二个最后的位置插入x(在第二个括号后) – HiveRLearner
我认为第二个选项会做,它有什么问题? – Psidom
您打算为多个字符串执行此操作吗?他们的模式是什么?向一个示例字符串添加'x'虽然不重要,但它可能不适用于您的实际数据。 – Phil
sub(“R)”,“R)x”,a) – www
菲尔说的话,然后是ycw的评论或者''粘贴''''substr'或者'sprintf(“(嗨,我是(学习R)%s)”,“x”)' –