通过perl缩短(减去)标题并删除fasta文件中的空行

时间:2013-06-13 20:31:34

标签: perl bioinformatics fasta

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

>GL13245678
ABCDEDERFSE

>GL123456789
ABDFDRAGDTGEGAGFDAS

>GL1254367890
AFGHSRSGFGSHSFG

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

>GL132456
ABCDEDERFSE
>GL123456
ABDFDRAGDTGEGAGFDAS
>GL125436
AFGHSRSGFGSHSFG

任何人都可以共享一个perl脚本吗?感谢

1 个答案:

答案 0 :(得分:1)

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

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

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

print if /\S/

全部放在一起:

perl -ne 's/^>GL\d{6}\K.+//; print if /\S/' file