First of all, the code you've given us shouldn't even compile as Perl. I would suggest the following:
$INVALID_STRING = quotemeta q<!"$\%&'()*/@`~>;
$STRING_TO_EXECUTE = "java myprogram -opt1 ABC -opt2 $INVALID_STRING";
Or, better yet, use
open() instead.
_____________________________________________________
Jeff
japhy Pinyan,
P.L., P.M., P.O.D, X.S.:
Perl,
regex,
and
perl
hacker
How can we ever be the sold short or the cheated, we who for every service have long ago been overpaid? ~~ Meister Eckhart