#! perl
use strict;
use warnings;
use List::MoreUtils 'uniq';
my $string = '0a0a0a0a0b0b0a0a0c0c0c0c0c0c0c0c' .
'1f1f2b2b2b2b3e3e7b7b7b7b7b7b7b7b' .
'8f8f8f8f8f8f8f8f6c6c4b4b4b4b3f3f' .
'9d9d0f0f0f0f0f0f0f0f3a3a2e2e2e2e';
my @seqs = $string =~ /(([0-9a-fA-F]{2})\2)/g;
@seqs = uniq grep { length == 4 } @seqs;
for my $seq (@seqs)
{
my $matches = () = $string =~ /$seq/g;
printf "%s: %d\n", $seq, $matches;
}
####
17:30 >perl 914_SoPW.pl
0a0a: 3
0b0b: 1
0c0c: 4
1f1f: 1
2b2b: 2
3e3e: 1
7b7b: 4
8f8f: 4
6c6c: 1
4b4b: 2
3f3f: 1
9d9d: 1
0f0f: 4
3a3a: 1
2e2e: 2
17:30 >
####
0a0axxx0a0a0yyyy
^^^^ ^^^^