我需要从这种格式转换一个 FASTA 标头:
gi|351517969|参考|NW_003613580.1| Cricetulus griseus 未放置的基因组支架,CriGri_1.0 scaffold329,全基因组鸟枪序列
对此:
NW_003613580.1 Cricetulus griseus 未放置的基因组支架,CriGri_1.0 scaffold329,全基因组鸟枪法序列
NW 中的 W 可以是其他地址中的 C,下划线后的位数不同。
我找到了一个 perl 脚本来将 ID 更改为不同的格式,并试图对其进行修改。相关部分:
while( $seq = $seq_in->next_seq() )
{
my $seqName = $seq->id;
$seqName =~ s/\|/\./g; #replace pipe with dot
$seqName =~ s/(NW\_)/$1/;
#$seqName =~ s/(gi\.\w*)\..*/$1/;
$seq->id($seqName);
$seq_out->write_seq($seq);
}
注释掉的 seqname 位是原始的。我希望将 gi 更改为 NW 会使它在标题中稍后开始阅读,但没有骰子。但是,将 $1 更改为随机文本确实会在 NW 处替换它,所以我不太确定。此外,更换管道的时期似乎没有任何合乎逻辑的理由消失(尽管我确实希望它们消失)。任何帮助,或者至少一些关于搜索和替换如何在这里工作的资源将不胜感激。