Tidied up a little more:
Actually, I'd probably invert the condition to make it clearer that it's accumulating multi-line sequences.
my( %pro, @names);
my( $name, $seq, $k );
while (defined( my $line = <DATA> )) {
unless ($line =~ /^>(.+)/) {
chomp( $line );
$seq .= $line;
} else {
if ($seq) {
$pro{$name} = $seq;
$seq = '';
}
($name = $1) =~ s/\s//g;
push @names, $name;
$k++;
}
}-- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] <http://learn.perl.org/> <http://learn.perl.org/first-response>
