Hallo,
ich möchte PHP-Scripte nach den Strings
md5($_REQUEST
md5($_GET
md5($_POST
durchsuchen und in meinem jugendlichen Leichtsinn, bin ich auf
/md5\(\$_(REQUEST|GET|POST)/
gekommen, was (natürlich, höhö) nicht funktioniert. Da ist zuerst eine Variable die dann für den regex verwendet wird:
my $pattern = "(md5\(\$_(REQUEST|GET|POST)|oder_anderer_regex|nocheinregex)";
if ($_ =~ /$pattern/i) {
.
.
.
Quittiert wird das mit dem Fehler
Unmatched ( in regex; marked by <-- HERE in m/( <-- HERE md5($_(REQUEST|GET|POST))/ at
Bei meinen Nachforschungen bin ich drauf gestossen, daß man nicht einfach in einem regex nach "(" suchen kann, sondern im gleichen Ausdruck auch nach ")" suchen muss und wenn ich den regex um ein "\)" ergänze tritt der Fehler nicht auf, es matcht aber auch nichts.
Gibt es eine Möglichkeit nach o.g. Strings zu suchen ohne die nachfolgenden Klammern berücksichtigen zu müssen.
Bitte keine Vorschläge mit Klassen und Methodenaufrufen, da diese zu teuer sind.
Grüsse
Frank