in reply to Efficient run determination.

Not enought laconically, although fast enought:
$string =' aaaa bbbbccccccccbbbb aaaabbbbbcddddddddddddddddddd +d'; $l = length($string); $pp = 0; while ($pp < $l) { $c = substr $string, $pp, 1; if ($string =~ /\G\Q$c\E+/gc) { print "('$c',", $pp, ",",pos($string) - $pp,")\n"; $pp = pos($string); } }