-4

我有一个这样的fasta文件,标题如下:

>GL13245678
ABCDEDERFSE

>GL123456789
ABDFDRAGDTGEGAGFDAS

>GL1254367890
AFGHSRSGFGSHSFG

我想将标题更改为仅包含 GL 和 6 位数字,并删除每个标题上方的空行,如下所示:

>GL132456
ABCDEDERFSE
>GL123456
ABDFDRAGDTGEGAGFDAS
>GL125436
AFGHSRSGFGSHSFG

任何人都可以为此分享一个perl脚本吗?谢谢

4

1 回答 1

1

>从GL 和 6 位数字之后的标题(以 开头的行)中删除任何内容:

s/^>GL\d{6}\K.+//

仅打印非空(仅空白)行:

print if /\S/

把它们放在一起:

perl -ne 's/^>GL\d{6}\K.+//; print if /\S/' file
于 2013-08-30T15:20:39.483 回答