Hallo,
ich versuche anhand des folgenden Patterns ALLE Link sin einem größeren HTML-Quelltext zu finden:
Ich wende das Pattern mit der Funktion preg_match_all() an. Leider ist mein Ausdruck sehr gefräßig und schluckt nach dem "</a>" Tag fleißig weiter den nachfolgenden Text bis er irgendwann wieder auf einen </a> Tag trifft das als Ende des Patterns interpretiert wird. Danach geht das Spielchen mit dem nächsten Link von vorne los.
Ich habe den U Modifier eingesetzt um die Gefräßigkeit zu unterbinden, jedoch scheint der keine Wirkung zu zeigen. Außerdem habe ich nach den . und + Metazeichen ? eingefügt - hilft aber auch nicht. Bin am Ende mit meinem Latein und bitte um Hilfe.
thx geordi
ich versuche anhand des folgenden Patterns ALLE Link sin einem größeren HTML-Quelltext zu finden:
PHP-Code:
$pattern = "!(<a.+?href=\"(.+?)\"(.*?)>(.+?)</a>)|(<a.+?href='(.+?)'(.*?)>(.+?)</a>)|(<a.+?href=(.+?) (.*?)>(.+?)</a>)!imsU"
Ich habe den U Modifier eingesetzt um die Gefräßigkeit zu unterbinden, jedoch scheint der keine Wirkung zu zeigen. Außerdem habe ich nach den . und + Metazeichen ? eingefügt - hilft aber auch nicht. Bin am Ende mit meinem Latein und bitte um Hilfe.
thx geordi
Kommentar