#!/usr/bin/perl use strict; use warnings; my $data_file = '/DATA/GenBankFile.gb'; open INFILE, '<', $data_file or die "Could not open '$data_file' $!"; my ( $cds, $gi, $version ); while ( ) { last if m!//$!; if ( /^VERSION.*\w:(\d+)/ ) { $version = $1; } elsif ( /^\s*\Sdb_xref="GI:(\d+)/ ) { $gi = $1; } elsif ( /^\s*CDS\s*(\S+)/ ) { $cds = $1; } if ( defined $cds && defined $gi && defined $version ) { print "$gi\t$version\t$cds\n"; $gi = $cds = undef; } } close INFILE;