my $str = join ' ', map {"$_-PAT"} 1 .. 10; warn $str; 1 while $str =~ s/PAT/REPL/; die $str; __END__ 1-PAT 2-PAT 3-PAT 4-PAT 5-PAT 6-PAT 7-PAT 8-PAT 9-PAT 10-PAT at - line 2. 1-REPL 2-REPL 3-REPL 4-REPL 5-REPL 6-REPL 7-REPL 8-REPL 9-REPL 10-REPL at - line 4. #### my $str = 'A b and A and c and A'; warn $str; $str =~ s/A/a/i for 1,2,3; die $str; __END__ A b and A and c and A at - line 3. a b and A and c and A at - line 5.