Heim > Backend-Entwicklung > PHP-Tutorial > Wie analysiert man HTML in PHP ohne reguläre Ausdrücke?

Wie analysiert man HTML in PHP ohne reguläre Ausdrücke?

Mary-Kate Olsen
Freigeben: 2024-12-06 11:31:11
Original
1038 Leute haben es durchsucht

How to Parse HTML in PHP without Regular Expressions?

PHP-Parse-HTML-Code (ohne reguläre Ausdrücke)

Sie haben eine PHP-Variable, die HTML-Code enthält, und Sie müssen den Text dazwischen extrahieren Überschriften ohne Verwendung regulärer Ausdrücke.

Lösung 1: PHP Document Object Model (DOM)

Dieser Ansatz beinhaltet die Verwendung des PHP Document Object Model (DOM) zum Parsen des HTML:

<?php
$str = '<h1T1</h1>Lorem ipsum.<h1T2</h1>The quick red fox...<h1T3</h1>... jumps over the lazy brown FROG';
$DOM = new DOMDocument;
$DOM->loadHTML($str);

// Get all H1 elements
$items = $DOM->getElementsByTagName('h1');

// Display the text of each H1 element
for ($i = 0; $i < $items->length; $i++) {
    echo $items->item($i)->nodeValue . "<br/>";
}
?>
Nach dem Login kopieren

Dadurch wird der Text in den Überschriften ausgegeben:

T1
T2
T3
Nach dem Login kopieren

Lösung 2: Regex-Ersatz (für Inhalte zwischen Überschriften)

Wenn das Ziel darin besteht, den Inhalt zwischen den Überschriften zu extrahieren, können Sie reguläre Ausdrücke wie folgt verwenden:

<?php
$str = '<h1T1</h1>Lorem ipsum.<h1T2</h1>The quick red fox...<h1T3</h1>... jumps over the lazy brown FROG';
$result = preg_replace("#<h1>.*?</h1>.*?</h1>#", "", $str);

echo $result;
?>
Nach dem Login kopieren

Dadurch wird der Inhalt zwischen den Überschriften ausgegeben:

Lorem ipsum.The quick red fox...... jumps over the lazy brown FROG
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie analysiert man HTML in PHP ohne reguläre Ausdrücke?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage