Ich habe eine Zeichenfolge $regexp_as_string
Nun möchte ich es in einen Regex "umwandeln" / benutze es als regexp
%Vor%Jetzt gibt es Zeichen wie "." und ich möchte ihnen automatisch entkommen - \ Q und \ E sollten das tun
%Vor%Gibt es eine Möglichkeit, eine Liste von Zeichen anzugeben, die automatisch maskiert werden sollen? Denn im Moment entweicht zB automatisch "|" aber ich möchte das behalten.
Vielleicht anstelle einer Zeichenfolge, die durch | verbunden wird für Alternationen, hole die Liste der Alternationen und baue sie zu einer Zeichenkette auf (oder teile sie sogar mit |, wenn das garantiert nie erscheint)? Etwas wie:
%Vor%oder verwenden Sie die Funktion Data :: Munge list2re:
%Vor%unter Verwendung der Beispielzeichenfolge von TLP
%Vor%Dies wird NUR einen Backslash zu Zeichen hinzufügen, die in der eckigen Klammer "Zeichenklasse"
stehenBeachten Sie, dass ich vor die Zeichen in den eckigen Klammern einen schwarzen Schrägstrich gesetzt habe. Dies ist nicht immer für alle Zeichen in diesem Kontext notwendig, aber es ist einfacher, einfach einen Backslash hinzuzufügen und sich nicht darum zu kümmern.
Tags und Links escaping regex perl special-characters