DevToolbox

免費線上 XPath Tester

XPath 線上測試工具——在瀏覽器中對 XML 文件求值 XPath 1.0 表達式。支援節點集、字串、數字、布林值及所有標準 XPath 軸,免費且完全在用戶端運行。

100% 用戶端處理 · 資料永不離開您的瀏覽器
Output appears here…
Quick Reference

使用說明 XPath Tester

將 XML 貼入左側的 XML 輸入面板,然後在右側的 XPath 表達式欄位輸入 XPath 表達式。

  • 點擊測試或按 Ctrl/Cmd+Enter 執行表達式。
  • 結果類型徽章顯示結果是節點集字串數字還是布林值
  • 對於節點集結果,每個匹配節點將被序列化並單獨顯示。
  • 點擊快速參考中的項目可插入常用 XPath 模式。
  • 點擊載入範例可載入書店 XML 範例。

XPath 求值使用瀏覽器原生 document.evaluate() API,不會向任何伺服器傳送資料。

常見問題

什麼是 XPath?

XPath(XML 路徑語言)是一種用於從 XML 文件中選取節點的查詢語言。它使用路徑表達式來遍歷樹狀結構。XPath 1.0 透過瀏覽器原生的 <code>document.evaluate()</code> API 獲得廣泛支援。

如何選取所有具有特定名稱的元素?

使用雙斜線 <code>//</code> 運算子進行遞迴搜尋。例如,<code>//book</code> 可選取文件中任意位置的所有 <code>&lt;book&gt;</code> 元素,<code>//title</code> 可選取任意深度的所有 <code>&lt;title&gt;</code> 元素。

如何選取屬性值?

在屬性名稱前加上 <code>@</code> 前綴。例如,<code>//book/@category</code> 返回所有 <code>&lt;book&gt;</code> 元素上的 "category" 屬性值。如需依屬性值篩選,可使用 <code>//book[@category="fiction"]</code>。

XPath 1.0 中有哪些可用函數?

XPath 1.0 包含字串函數(<code>string()</code>、<code>contains()</code>、<code>starts-with()</code>、<code>normalize-space()</code>)、數字函數(<code>count()</code>、<code>sum()</code>、<code>number()</code>)、布林函數(<code>boolean()</code>、<code>not()</code>)及節點導覽函數(<code>last()</code>、<code>position()</code>、<code>name()</code>、<code>local-name()</code>)。

為什麼我的 XPath 沒有返回結果?

常見原因:(1) 元素有命名空間——XPath 1.0 需要特殊處理命名空間;(2) 路徑區分大小寫——XML 元素名稱區分大小寫;(3) 使用了 XPath 2.0 語法(如 <code>fn:</code> 前綴),瀏覽器原生 XPath 1.0 引擎不支援此語法。

我的 XML 資料安全嗎?

是的,XML 的解析和查詢完全在瀏覽器中使用內建的 DOMParser 和 document.evaluate() API 完成,不會向任何伺服器傳送資料。您可以放心貼上內部 XML 文件。

相關工具