制表符分隔文件中的重复块并替换单词

时间:2015-06-22 16:35:28

标签: text-parsing

我目前有以下示例文本文件: http://pastebin.com/BasTiD4x

我需要复制CDS块。本质上,具有单词“CDS”的行和其后的4行是CDS块的一部分。

我需要在说明CDS的行之前插入这个重复的CDS块,我需要将重复块中的CDS单词更改为mRNA。

当然,每次有CDS实例时都需要这样做。

示例输出将在此处: http://pastebin.com/mEMAB50t

基本上对于每个CDS块,我需要一个完全相同的mRNA块。

非常感谢这方面的帮助,从未完成4行插入和替换。

谢谢, 阿德里安

1 个答案:

答案 0 :(得分:0)

抱歉非常具体的问题。以下是其他人提供的有效解决方案:

perl -ne 'if (! /^\s/){$ok=0;if($mem){$mem=~s/CDS/mRNA/;print $mem;$mem="";}}$ok=1 if (/\d+\s+CDS/);if($ok){$mem.=$_};print;' exemple