regex - Replace an asterisk (*) using Perl regular expression -
i have following string:
$_='364*84252';
the question is: how replace * in string else? i've tried s/\*/$i/, there error: quantifier follows nothing in regex. on other hand s/'*'/$i/ doesn't cause errors, doesn't seem have effect @ all.
something else weird here...
~> cat test.pl $a = "234*343"; $i = "foo"; $a =~ s/\*/$i/; print $a; ~> perl test.pl 234foo343 found something:
~> cat test.pl $a = "234*343"; $i = "*4"; $a =~ m/$i/; print $a; ~> perl test.pl quantifier follows nothing in regex; marked <-- here in m/* <-- here 4/ @ test.pl line 4. solution, escape special characters variable using \q , \e, example (timtowtdi)
~> cat test.pl $a = "234*343"; $i = "*4"; $a =~ m/\q$i\e/; print $a; ~> perl test.pl 234*343
Comments
Post a Comment