my $x = "foo"; my $y = 'abc $x def\\/'; escape_slashes($y); $y = eval "qq/$y/"; unescape_slashes($y); print "y=$y\n"; sub escape_slashes { $_[0] =~ s#(\\|/)#\\\\$1#g; } sub unescape_slashes { $_[0] =~ s#(\\\\|\\/)#substr($1, 1, 1)#eg; }