my $var= "hello, world"; for( @{[ $var ]} ) { # Make a copy s/world/earth/; say; # hello, earth } say $var; # hello, world #### use strict; my $var= "Hello, World!"; for( my $copy= $var ) { s/World/Earth/; print $_, $/; } print $var, $/; eval 'print $copy, $/; 1' or print '$copy no longer in scope', $/; __END__ Hello, Earth! Hello, World! $copy no longer in scope