dclp FAQ

FAQ der Newsgroups de.comp.lang.php.*

 
  • Increase font size
  • Default font size
  • Decrease font size

Reguläre Ausdrücke

Wie finde ich alle Links in einer HTML-Datei?

E-MailDruckenPDFLesezeichen anlegen: Du musst dich einloggen um ein Lesezeichen für diesen Beitrag anzulegen. Es wird deiner persönlichen Lesezeichenliste hinzugefügt.

$zeile sei der Inhalt einer zuvor eingelesenen HTML-Datei. Diese Variable muss innerhalb der While-Schleife neu zusammengebaut werden, sonst läuft man hier in eine Endlosschleife.

$pattern = '=^(.*)<a(.*)href\="?(\S+)"([^>]*)>(.*)</a>(.*)$=msi';
while (preg_match($pattern, $zeile, $txt))
{
  /* $txt[3] enthält die gewünschte URL. */
  echo $txt[3]."\n";
 
  /* $zeile neu bauen */
  $zeile = $txt[1]." hier war mal ein Link ".$txt[6];
}
 
/* $zeile zur Kontrolle ausgeben */
print "<br>".nl2br($zeile);

$txt enthält als Array alle Tokens, die in der Regexp in Klammern angegeben sind. $txt[0]als Sonderstellung enthält den ganzen Text.

Wie finde ich alle Links in einer HTML-Datei?
http://www.php-faq.de/q-regexp-links-finden.html
 

Login