我有一个这样的fasta文件,标题如下:
>GL13245678
ABCDEDERFSE
>GL123456789
ABDFDRAGDTGEGAGFDAS
>GL1254367890
AFGHSRSGFGSHSFG
我想将标题更改为仅包含GL和6位数,并删除每个标题上方的空行,如下所示:
>GL132456
ABCDEDERFSE
>GL123456
ABDFDRAGDTGEGAGFDAS
>GL125436
AFGHSRSGFGSHSFG
任何人都可以共享一个perl脚本吗?感谢
答案 0 :(得分:1)
在GL和6位数后删除标题(以>
开头的行)中的任何内容:
s/^>GL\d{6}\K.+//
仅打印非空(仅限空白)行:
print if /\S/
全部放在一起:
perl -ne 's/^>GL\d{6}\K.+//; print if /\S/' file