首頁 >後端開發 >php教程 >如何在沒有正規表示式的情況下用 PHP 解析 HTML?

如何在沒有正規表示式的情況下用 PHP 解析 HTML?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-12-06 11:31:111002瀏覽

How to Parse HTML in PHP without Regular Expressions?

PHP 解析HTML 程式碼(不含正規表示式)

您有一個包含HTML 程式碼的PHP 變量,您需要擷取不使用正規表示式的標題。

解決方案1:PHP 文檔物件模型(DOM)

此方法涉及使用PHP 文件物件模型(DOM) 解析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/>";
}
?>

這將輸出標題中的文字:

T1
T2
T3

解2:正規表示式替換(對於介於標題)

如果目標是擷取標題之間的內容,可以使用正規表示式,如下所顯示:

<?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;
?>

這將輸出標題之間的內容:

Lorem ipsum.The quick red fox...... jumps over the lazy brown FROG

以上是如何在沒有正規表示式的情況下用 PHP 解析 HTML?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn