Hi,
$string =~ s/([?.\+\*^$|\()[]{}])/\$1/g;
Hm. Soweit ich weiß, muß innerhalb der Zeichenklasse [] fast gar nichts maskiert werden: '-' wenn es nicht am Anfang (nach ggf. vorhandenem ^) oder Ende steht, ']' wenn es nicht am Anfang (nach ggf. vorhandenem ^ steht), '' immer.
Deine Zeichenklasse enthält zweimal den escapeten \ (nach dem Punkt und nach dem |. Das + hast Du nicht escapet.
Außerhalb einer Zeichenklasse könnte \Q ... \E was für Dich sein. Aber in der Zeichenklasse geht das natürlich nicht. Ist ja auch nicht notwendig.
cu,
Andreas
--
Warum nennt sich Andreas hier MudGuard?
O o ostern ...
Fachfragen per Mail sind frech, werden ignoriert. Das Forum existiert.
Warum nennt sich Andreas hier MudGuard?
O o ostern ...
Fachfragen per Mail sind frech, werden ignoriert. Das Forum existiert.