Java XPath解析器
XPath是萬維網聯盟(W3C)的官方推薦。它定義了一個語言在XML文件中查找信息。它被用於遍曆XML文檔的元素和屬性。 XPath提供各種類型,可用於從XML文檔查詢相關的信息表現形式。
什麼是XPath?
-
結構定義 - XPath定義像元素,屬性,文本,命名空間,處理指令,注釋和文檔節點的XML文檔部分
-
路徑表達式 - XPath提供了強大的路徑表達式選擇的節點或在XML文檔中的節點列表。
-
標準功能 - XPath提供了豐富的標準函數庫操縱字符串值,數值,日期和時間比較,節操作,順序操作,布爾值等。
-
XSLT重要組成部分 - XPath是在XSLT標準的主要元素之一,是必須有知識,以便使用XSLT的文檔。
-
W3C推薦 - XPath是萬維網聯盟(W3C)的官方推薦。
這裡是我們需要分析輸入文本文件:
<?xml version="1.0"?> <class> <student rollno="393"> <firstname>dinkar</firstname> <lastname>kad</lastname> <nickname>dinkar</nickname> <marks>85</marks> </student> <student rollno="493"> <firstname>Vaneet</firstname> <lastname>Gupta</lastname> <nickname>vinni</nickname> <marks>95</marks> </student> <student rollno="593"> <firstname>jasvir</firstname> <lastname>singn</lastname> <nickname>jazz</nickname> <marks>90</marks> </student> </class>
XPath表達式
XPath使用路徑表達式從XML文檔中選擇一個或多個節點的列表。以下是有用的路徑和表達,從XML文檔選擇節點的任何節點/列表清單。
表達式 | 描述 |
---|---|
node-name | 選擇具有給定名稱的所有節點“nodename” |
/ | 選擇從根節點開始 |
// | 選擇從當前節點匹配開始的選擇 |
. | 選擇當前節點 |
.. | 選擇當前節點的父節點 |
@ | 選擇屬性 |
student | 例如:選擇名稱為“student”的所有節點 |
class/student | 例如:選擇屬於類的所有學生的子類元素 |
//student | 選擇文檔中所有學生的元素 |
謂詞
謂詞用於查找特定的節點或一個節點含有特定的值,並使用所定義 [...] .
表達式 | 結果 |
---|---|
/class/student[1] | 選擇的是類元素的子第一個學生的元素 |
/class/student[last()] | 選擇的是類元素的子最後一個學生的元素 |
/class/student[last()-1] | 選擇的是類元素倒數的第二個學生的子元素 |
//student[@rollno='493'] | 選擇一個名為rollno為'493'值的屬性的學生元素 |