foreach $id (keys %seq){ if ((length ($seq{$id}) <= $maxlength) || (length($seq{$id}) >= $minlength)){ push @seqarray,$id; } } for my $id (@seqarray){ print $id."\n".$seq{$id}."\n"; }