在r中添加字符串到字符串

时间:2017-05-18 20:59:42

标签: r

所以我有一个字符列,每行看起来像这样:

aa  Alice
bb  peter
cc  Jon 

我想在前两个字母后添加一个点。所以得到像

这样的东西
aa. Alice
bb. peter
cc. Jon

请帮忙,还是不太熟悉r中的字符串函数。

感谢一堆

1 个答案:

答案 0 :(得分:1)

更一般地说,如果您想在第一个单词后添加.并保留其他所有内容,则可以在gsub中使用捕获组:

gsub("(^\\w+)(.*)", "\\1.\\2", chars)

#[1] "aa.  Alice" "bb.  peter" "cc.  Jon"  

在这种情况下,(^\\w+)匹配字符串开头的任何长度的单词。我们抓住这个并在.之后加\\1.

或者,如果您希望始终在前两个字符后粘贴.,则可以使用类似的想法:

sub("([[:alpha:]]{2})(.*)", "\\1.\\2", chars)