JAVA实现可视化的xpath_Java学习之XPath
一、XPath語言是一門專用于在XML文檔中查找信息的語言,其他XML程序可利用XPath在XML文檔中對元素和屬性進行導航。
提問:為什么要查找標簽和屬性呢?
回答:因為XML文檔是用來存儲數據的,需要將數據提取出來使用,所以通過查找標簽和屬性進一步獲取數據。
XPath節點:
XPath基本概念
基本知識(或稱為原子值)
-基本值專門用于表示簡單的數據值,例如整數值,字符串等。我們可以把基本值當成沒有父節點且沒有子節點的節點。
例:"chinese"
項
-項是XPath2.0提出的一個術語,一個項代表一個節點或基本值。
節點集和序列
-在某些情況下,XPath表達式可以表示多個節點,多個節點組合在一起在XPath1.0里稱為節點集。
-XPath2.0提出一個序列的概念,XPath2.0的序列可以代表一個普通的項,也可以代表節點集。
節點關系
父節點;子節點 ;兄弟節點;祖先節點;后代節點;
相對路徑和絕對路徑:
XPath同樣支持相對路徑和絕對路徑,對于XPath而言,絕對路徑以斜線(/)開頭,而相對路徑則不會以斜線(/)開頭
例如:
XPath基礎語法:
XPath使用路徑表達式來定位XML文檔中的節點或節點集,每個Xpath表達式總由多個步(step)組成,多個步之間用斜線分隔。
例如: /list/book/name
XPath中步的完整語法格式如下:
軸::節點測試[限定謂語]
XPath的步驟使用軸來定義所選節點與當前節點之間的結構關系。
節點測試:
節點測試用于從指定軸所匹配的節點集中選出特定的節點。
限定謂語:
限定謂語是一個boolean表達式,或者可以轉換為boolean值得表達式,用于進一步提煉所選的節點集。限定謂語應該放在括號中。
child::book[1] 或 child::book[position()=1]
XPath運算符
算術運算符:
比較運算符:
邏輯運算符:
組合多個路徑的運算符:
XPath還提供了一個"|" 運算符,可用于組合多個路徑表達式,通過“|”運算符,可以一次選取若干個路徑。
例如:book[position()=1] | name[position()=last()]
節點相關的常見函數:
總結
以上是生活随笔為你收集整理的JAVA实现可视化的xpath_Java学习之XPath的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java poi 如何合并多个sheet
- 下一篇: 希尔伯特曲线 java_Java中空间填