while ( my $string = ) { $string =~ s/(.)(\1+)/$1.length($1.$2)/ge; print $string; } __DATA__ Balloon bookkeeper Wheeeee!!! #### Bal2o2n bo2k2e2per Whe5!3