我想解析一個GBK文件。基本上,我需要返回匹配模式的基因座位標籤和產品名稱。因此,如果主題我想搜索所有預測基因產物,檢索詞「預言」將返回:如何解析匹配文件,並在Perl中匹配字符串之前打印字符串?
/product="predicted semialdehyde dehydrogenase"
/locus_tag="ECDH10B_2481"
我已經能夠返回/product
但我無法弄清楚如何解析「向後「來抓取/locus_tag
。
這是我到目前爲止有:
my $fasta_file = 'example.txt';
open(INPUT, $fasta_file) || die "ERROR: can't read input FASTA file: $!";
while (<INPUT>) {
if(/predicted/){
print $_;
}
}
>將example.txt
gene complement(2525423..2526436)
/gene="usg"
/locus_tag="ECDH10B_2481"
CDS complement(2525423..2526436)
/gene="usg"
/locus_tag="ECDH10B_2481"
/codon_start=1
/transl_table=11
/product="predicted semialdehyde dehydrogenase"
/protein_id="ACB03477.1"
/db_xref="GI:169889770"
/db_xref="ASAP:AEC-0002184"
/translation="MSEGWNIAVLGATGAVGEALLETLAERQFPVGEIYALARNESAG
EQL"
gene complement(2526502..2527638)
/gene="pdxB"
/locus_tag="ECDH10B_2482"
CDS complement(2526502..2527638)
/gene="pdxB"
/locus_tag="ECDH10B_2482"
/codon_start=1
/transl_table=11
/product="erythronate-4-phosphate dehydrogenase"
/protein_id="ACB03478.1"
/db_xref="GI:169889771"
/db_xref="ASAP:AEC-0002185"
/translation="MKILVDENMPYARDLFSRLGEVTAVPGRPIPVAQLADADALMVR
SVTKVNESLLAGKPIKFVGTATAGTDHVDEAWLKQAGIGFSAAP"
「基因」和「CDS」前面的額外空間是否是一個錯字? – Schwern 2013-03-04 20:40:35
這看起來不像FASTA格式,那是什麼格式?可能有一個現有的解析器可以使用。 – Schwern 2013-03-04 20:57:10
對不起,這是GBK格式。 – Stephen 2013-03-05 21:41:01