PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Link auslesen



DMKlein
06-02-2005, 16:58
Hi,

ich möchte die URl von einem Link aus einer Seite auslesen, d.h. ich rufe die Seite mit file_get_contents() auf, und die liefert mir ja nun den kompletten Code als String zurück. Nun möchte ich die URL von einem Link raussuchen, d.h. im Code steht ja
<a href="http://LINK" onFocus="this.blur()" ><b><font color="#990000">MEIN LINK</b></font></a>
Nun möchte ich nach "MEIN LINK" suchen und URL die dadurch verknüpft ist rausfiltern. Doch wie muss ich da vorgehen????

Daniel

ContainerDriver
06-02-2005, 21:34
Hallo.
Ich würde erstmal die ganzen uninteressanten Tags mit strip_tags() raushauen. Dann kannst du den String einfach durchparsen (Stichwort strstr()).
Stellt wich nur ein Problem:


<a href="bla.html"><b>BLUB</b>Hallo</a>

daraus wir mit strip_tags (wenn man <a> erlaubt)


<a href="bla.html">BLUBHallo</a>

. Aber vlt. ist dass für dein Anwendungsgebiet gar kein Problem.

Gruß, Florian

ContainerDriver
06-02-2005, 21:35
Hallo.
Ich würde erstmal die ganzen uninteressanten Tags mit strip_tags() raushauen. Dann kannst du den String einfach durchparsen (Stichwort strstr()).
Stellt sich nur ein Problem:


<a href="bla.html"><b>BLUB</b>Hallo</a>

daraus wir mit strip_tags (wenn man <a> erlaubt)


<a href="bla.html">BLUBHallo</a>

. Aber vlt. ist dass für dein Anwendungsgebiet gar kein Problem.

Gruß, Florian

Pingu
07-02-2005, 14:33
Das Ganze kann man dann über ein preg_match() (http://www.php.net/preg-match) oder besser preg_match_all() (http://www.php.net/preg-match-all) laufen lassen, z.B. mit
|<a[^>]*href="([^"]*)"[^>]*>([^<]*)</a>|i
oder alternativ:

|<a.*href="(.*)".*>(.*)</a>|iU

Pingu