my $dna = join '', map { chomp; $_ } ; my $template = ('AXA2X2A3X2' x (length($dna) - 2)) . 'AXA2XA'; my %count; $count{$_}++ for unpack $template, $dna; print "$_\t$count{$_}\n" for keys %count; __DATA__ AAAAAAAACAAGAATACACAACCACGACTAGAGAAGCAGGAGTATATAATCATGATTCCACAACACCAGCATCCCCACCCCCGCCTCGCGACGCCGGCGT CTCTACTCCTGCTTGGAGAAGACGAGGATGCGCAGCCGCGGCTGGGGAGGCGGGGGTGTGTAGTCGTGGTTTTATAATACTAGTATTCTCATCCTCGTCT TGTGATGCTGGTGTTTTTATTCTTGTTTAACACAACCACTAGAGCAGTATATAATCCCACACCAGCCCCCCCTCGCGACGGCGTCTCTACTCCTGGGAGA CGAGGATGCGCAGCGGCTGGGGAGGGGTGTAGTCTTATACTAGTATTCTCCTCGTCTTGTGATGCTGGACTGGGGTCGATCGTCGAAATCGGCTAGCTAA AAAAAAACAAGAATACACAACCACGACTAGAGAAGCAGGAGTATATAATCATGATTCCACAACACCAGCATCCCCACCCCCGCCTCGCGACGCCGGCGTC TCTACTCCTGCTTGGAGAAGACGAGGATGCGCAGCCGCGGCTGGGGAGGCGGGGGTGTGTAGTCGTGGTTTTATAATACTAGTATTCTCATCCTCGTCTT GTGATGCTGGTGTTTTTATTCTTGTTTAACACAACCACTAGAGCAGTATATAATCCCACACCAGCCCCCCCTCGCGACGGCGTCTCTACTCCTGGGAGAC