my $string = "abc abc abc abc"; my $x = 1; while ($string =~ /abc /ig) { my $i = pos($string); $string =~ s/(abc) /$1 def($x)/; print "$string\n"; pos($string) = $i + 6; } print "\nDone. string = '$string'\n"; #### abc def(1) abc def(2) abc def(3) abc def(4)