首頁 >後端開發 >php教程 >如何使用 DOMDocument 和 XPath 從 HTML 中定位和提取特定文字內容?

如何使用 DOMDocument 和 XPath 從 HTML 中定位和提取特定文字內容?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-10-30 09:51:271017瀏覽

How can DOMDocument and XPath be used to Target and Extract Specific Text Content from HTML?

針對特定內容的 DOMDocument 解析

使用強大的 PHP 函式庫「DOMDocument」可以精確解析 HTML 文件。與檢索所有具有特定名稱的標籤的「getElementsByTagName」不同,此方法利用 XPath 查詢來有效定位所需的元素。

捕捉特定上下文中的文字節點

到擷取特定文字內容,該過程涉及:

  • 使用「DOMDocument::loadHTMLML 」將HTML 字串載入到DOM 物件中。
  • 使用「new DOMXPath」啟動「XPath」物件($dom)"。
  • 使用指定目標節點的XPath 查詢。例如:
$tags = $xpath->query('//div[@class="main"]/div[@class="text"]');

此查詢會擷取所有

巢狀在
中的“text”類別標籤具有“main”類別的標籤。其中包含實際文字:

foreach ($tags as $tag) {
    var_dump(trim($tag->nodeValue));
}
範例實作

考慮以下HTML 片段:

使用提供的查詢,輸出將是:
<code class="html"><div class="main">
    <div class="text">
    Capture this text 1
    </div>
</div>

<div class="main">
    <div class="text">
    Capture this text 2
    </div>
</div></code>

This示範使用「DOMDocument」和XPath 在分層HTML 結構中精確擷取特定文字內容的能力。

以上是如何使用 DOMDocument 和 XPath 從 HTML 中定位和提取特定文字內容?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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