-
preg_match Problemchen
Hi WebDev!
Ich habe hier ein komisches Problem:
Ich möchte Abfragen ob im $text gewissen Zeichen vorhanden sind. Hier im Beispiel soll gefragt werden ob '/../' (..) vorkommt.
PHP-Code:
$zeichenkette = "abcdef";
$suchmuster = '/../';
if(preg_match($suchmuster, $zeichenkette)){echo "das Suchmuster kommt im Text vor";}
else {echo "kommt nicht im text vor";}
In $zeichenkette kommt .. nicht vor, wie man sieht.
Trotzdem kommt "das Suchmuster kommt im Text vor" als Antwort, warum?
Wie kann ich das vermeiden?
Änder ich .. in $suchmuster in .2. oder sonstigen Wert (der nicht in abcdef beinhaltet ist) kommt die else{} Antwort. So sollte es ja auch sein.
Dennis
-
Wie wär's, wenn du die Punkte maskierst?
Ein Punkt steht bei Regexps für ein beliebiges Zeichen - dein RegExp mus /\.\./ lauten.
-
mq hat Recht. /../ würde bedeuten, dass du einfach mindestens zwei beliebige Zeichen nebeneinander haben möchtest. Das kann aa, $#, omgwtfbbq und auch .. sein.