#!/usr/bin/perl use strict; use warnings; my $foo = undef; # No warning my $line = 'substitute for $foo in $bar here'; $line =~ s/(\$\w+)/"defined $1 ? $1 : ''"/eeg; print $line, "\n"; #### hairbear% ./test2.pl Use of uninitialized value in substitution iterator at ./test2.pl line 11. substitute for in here