reguläre Ausdrücke mit .*
Stephan Schmid
- php
Guten morgen,
ich habe ein Problem mit einem regulären Ausdruck unter php/ereg und weiss nicht obs an mir oder an php liegt (mit Perl gings):
Durchsuchter String: <div>hallo</div>
regulärer Ausdruck: /<(.*)>/
erwartetes Ergebnis: div
geliefertes Ergebnis: div>hallo</div
hat jemand eine Idee wo der Fehler ist ?
Danke
Stephan
Guten morgen,
ich habe ein Problem mit einem regulären Ausdruck unter php/ereg und weiss nicht obs an mir oder an php liegt (mit Perl gings):
Durchsuchter String: <div>hallo</div>
regulärer Ausdruck: /<(.*)>/erwartetes Ergebnis: div
geliefertes Ergebnis: div>hallo</divhat jemand eine Idee wo der Fehler ist ?
Danke
Stephan
Hi Stephan,
das .* ist gierig und frisst erstmal alles bis zum letzten Zeichen. Dann wird einzeln von hinten
weggenommen bis zum ersten match.
Mach es ungierig und es funzt:
/<(.*?)</
geht leider nur bei den preg_xxx() Funktionen, die ereg's mögen das (so) nicht.
Gruss,
Carsten
danke Carsten
preg_match tut bei mir (php3) zwar nicht aber jetzt kann ich wenigstens beruhigt ins Bette gehen
Gute Nacht