use strict; use warnings; my $str = "char(123)+char(107)+char(112)+char(43)"; my $newStr; () = $str =~ m|(\d+)(?{$newStr .= chr($1)})|g; print "$newStr\n"; #### {kp*