$line =~ s/(\$\w+->{\w+})/"$1 or ''"/eeg; # or $line =~ s/(\$\w+->{\w+})/eval "$1" or ''/eg; # or my favorite $line =~ s/(\$\w+->{\w+})/eval "$1" or print(STDERR "$1 is not defined\n"), ''/eg;