PHP Regex supereinfach, aber es klappt nicht :(

Seby007

Commander
Registriert
Nov. 2003
Beiträge
2.690
Liebe Community,

wenn ich das eingebe

PHP:
$muster = "/a{,3}/";
$str = "aaa";
echo preg_match($muster, $str);

Findet preg_match nichts - obwohl doch
Code:
a{,3}
bedeutet "finde bis zu 3 a hintereinander".
Dagegen...

Code:
a{0,3}
a{1,3}
a{3,}
geht es. Darum bin ich umso mehr irritiert...
 
Weil es {,3} so nicht gibt, da nicht klar ist, wieviele a's es minimal sein sollen bzw. ob mindestens 1 a vorhanden sein muss.
 
Dabei stand im PHP-Fachbuch ausdrücklich:

Sie können auch nur einen Minimalwert angeben: {7,} bedeutet mindestens 7-mal bis zu beliebig viele. Umgekehrt bedeutet {,7} höchstens 7-mal.
Wird ein Vertipper sein.

Irgendwie wirkt das total inkonsequent wenn {n,} geht, aber {,n} nicht geht. Da der Fall aber auch bei Javascript ist - scheint es wirklic hso sein.

Danke für deine schnelle Antwort
 
Umgekehrt bedeutet {,7} höchstens 7-mal
.. was zu keiner Zeit impliziert, dass es mindestens 3 mal da ist.

mfg,
Max
 
Zurück
Oben