sub matchit { my $data=shift; if ($data =~ m/(ct[ag]a[ct])(.*)$/) { print "$1\t".length($2)."\t"; matchit($2); } else { print "\n"; } } matchit($_) while();