O'Reilly logo

PHP 5 Kochbuch, Third Edition by Stephan Schmidt, Ulrich Speidel, Matthias Brusdeylins, Carsten Lucke, Adam Trachtenberg, David Sklar

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

16.7 Text innerhalb von HTML-Tags finden

Problem

Sie möchten Text auslesen, der sich innerhalb von HTML-Tags befindet. Zum Beispiel möchten Sie alle Überschriften in einem HTML-Dokument finden.

Lösung

Lesen Sie die HTML-Datei in einen String ein und führen Sie nicht-gieriges Matching mit Ihrem Muster durch:

$html = join('',file($file));
preg_match('#<h([1-6])>(.+?)</h\1>#is', $html, $matches);

In diesem Beispiel enthält $matches[2] ein Array mit den ausgelesenen Überschriften.

Diskussion

Es ist schwierig, HTML-Code mit einfachen regulären Ausdrücken korrekt zu analysieren. Einer der Vorteile von XHTML ist, dass es deutlich einfacher zu validieren und zu zerlegen ist.

Zu Beginn des Suchmusters sehen wir, dass das Ergebnis der Zahlengruppe [1-6] mit runden ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required