use strict; use warnings; use 5.010; use Readonly; Readonly my $SPACE => q{ }; my $string = "(1,2,3) XXX (1,2,3)"; my @pieces = split $SPACE, $string; $pieces[-1] =~ s{(\d)}{'$1'}g; my $new_string = join $SPACE, @pieces; say $new_string; --output:-- (1,2,3) XXX ('1','2','3')