替换R中两个空格之间的文本

时间:2015-07-28 10:32:05

标签: r replace

我有这个字符串:

  \tBangkok\t 1\tAGGGGCCHCCTTTTCTCTTTCTCT\t.

在这个字符串中,我想替换" \ t"之间的文字。和" \ t" (即曼谷)与河内。 所以结果将是

   \tHanoi\t 1\tAGGGGCCHCCTTTTCTCTTTCTCT\t

此外,我想替换" 1 \ t"之间的文字。和" \ t"用

这样的文字
   "AFGGGKKKKCTTJJCTCTTTCTCT"

(具有相同的长度)。

   \tHanoi\t 1\tAFGGGKKKKCTTJJCTCTTTCTCT\t 

我应该为几行做同样的事情,所以我想找到一个更通用的命令。

1 个答案:

答案 0 :(得分:1)

你可以试试这个,

> x <- "\tBangkok\t 1\tAGGGGCCHCCTTTTCTCTTTCTCT\t"
> gsub("\\B\\t\\K\\w+(?=\\t)", "HAnoi", x, perl=T)
[1] "\tHAnoi\t 1\tAGGGGCCHCCTTTTCTCTTTCTCT\t"
> y <- gsub("\\B\\t\\K\\w+(?=\\t)", "HAnoi", x, perl=T)
> gsub("(1\\t)\\w+(\\t)", "\\1AFGGGKKKKCTTJJCTCTTTCTCT\\2", y, perl=T)
[1] "\tHAnoi\t 1\tAFGGGKKKKCTTJJCTCTTTCTCT\t"