(PHP) alle verlinken bilder mit regulärem ausdruck finden
FICHTL
- programmiertechnik
einen wunderschönen guten morgen
dem forum und seinen insassen
also ich möchte eine html-seite nach verlinkten bildern durchsuchen also:
<a href="hui.jpg"><img src="hui.gif"></a>
und ich komm einfach nicht mehr weiter. zuerst der letzte stand:
preg_match_all("/(<a [^<]+>)(.*)(</a>)/s",$strPageCont,$matches, PREG_SET_ORDER);
obenstehende funktion durchsucht einen string der die gesamte html-seite enthält
gefunden wird zur zeit vom ersten "<a " bis zum letzten "</a>" ich möchte aber
vom ersten "<a " bis zum ERSTEN "</a>" und so weiter. wie geht das?
i blick überhaupt nicht durch bei diesen regulären ausdrücken
danke und schöne grüße
FICHTL
einen wunderschönen guten morgen
Moin,
und ich komm einfach nicht mehr weiter. zuerst der letzte stand:
preg_match_all("/(<a [^<]+>)(.*)(</a>)/s",$strPageCont,$matches, PREG_SET_ORDER);
Auf die Gefahr, mit neu gelerntem (Perl)Wissen gleich auf den Bauch zu fallen : (.*?) sollte es bringen. Das Fragezeichen bändigt den Hunger des Punktes und deckt nur minimal ab
Viele Grüße
Swen
mahlzeit!
danke das war genau das was mir gefehlt hat...
ich bin jetzt schon ein bischen weiter, steh aber schon wieder an...
jetzt schaut der ausdruck so aus und funktioniert eigentlich ganz gut:
/(<a )(.*?)(href="?)(.*?)( |")(.*?)(src="?)(.*?)( |")(.*?)(</a>)/si
wichtig ist für mich das zweite (.*?) wo der URL drinsteht jetzt
wäre es schön wenn ich gleich wüßte ob auf ein bild (gif|jpg) verwiesen wird.
und so hab ichs versucht:
(.*?(gif|jpg)) oder (.*?)(gif|jpg) oder (.*?gif|jpg) und mit fragezeichen
dahinter oder plus oder oder, aber anscheinend hab ich das richtige nicht
gefunden denn entweder er findet nichts mehr oder er finden "htm" oder nur
jpg irgendwas hab ich da wieder nicht begriffen...
vielleicht hilft da ja wieder das gute neue perl wissen...
bis dann..
FICHTL