日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

XPath element 格式

發(fā)布時(shí)間:2025/4/16 编程问答 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 XPath element 格式 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

一、xpath表達(dá)式的基本格式

xpath通過“路徑表達(dá)式”(Path Expression)來選擇節(jié)點(diǎn)。

# 斜杠(/)作為路徑內(nèi)部的分割符。

# 同一個(gè)節(jié)點(diǎn)有絕對路徑和相對路徑兩種寫法。

# 絕對路徑(absolute path)必須用“/”起首,后面緊跟根節(jié)點(diǎn),比如/step/step/...。

# 相對路徑(relative path)則是除了絕對路徑以外的其他寫法,比如 step/step,也就是不使用“/”起首。

# “.”表示當(dāng)前節(jié)點(diǎn)。

# “..”表示當(dāng)前節(jié)點(diǎn)的父節(jié)點(diǎn)

二、選擇節(jié)點(diǎn)的基本規(guī)則

- nodename(節(jié)點(diǎn)名稱):表示選擇該節(jié)點(diǎn)的所有子節(jié)點(diǎn)

- “/”:表示選擇根節(jié)點(diǎn)

- “//”:表示選擇任意位置的某個(gè)節(jié)點(diǎn)

- “@”: 表示選擇某個(gè)屬性

三、實(shí)例

先看一個(gè)XML實(shí)例文檔。

<?xml?version="1.0"?encoding="ISO-8859-1"?>

<bookstore>

??<book>
????<title?lang="eng">Harry?Potter</title>
????<price>29.99</price>
??</book>

??<book>
????<title?lang="eng">Learning?XML</title>
????<price>39.95</price>
??</book>

</bookstore>

[例1]

bookstore :選取 bookstore 元素的所有子節(jié)點(diǎn)。

[例2]

/bookstore :選取根節(jié)點(diǎn)bookstore,這是絕對路徑寫法。

[例3]

bookstore/book :選取所有屬于 bookstore 的子元素的 book元素,這是相對路徑寫法。

[例4]

//book :選擇所有 book 子元素,而不管它們在文檔中的位置。

[例5]

bookstore//book :選擇所有屬于 bookstore 元素的后代的 book 元素,而不管它們位于 bookstore 之下的什么位置。

[例6]

//@lang :選取所有名為 lang 的屬性。

四、xpath的謂語條件(Predicate)

所謂“謂語條件”,就是對路徑表達(dá)式的附加條件。

所有的條件,都寫在方括號“[]”中,表示對節(jié)點(diǎn)進(jìn)行進(jìn)一步的篩選。

[例7]

/bookstore/book[1] :表示選擇bookstore的第一個(gè)book子元素。

[例8]

/bookstore/book[last()] :表示選擇bookstore的最后一個(gè)book子元素。

[例9]

/bookstore/book[last()-1] :表示選擇bookstore的倒數(shù)第二個(gè)book子元素。

[例10]

/bookstore/book[position()<3] :表示選擇bookstore的前兩個(gè)book子元素。

[例11]

//title[@lang] :表示選擇所有具有l(wèi)ang屬性的title節(jié)點(diǎn)。

[例12]

//title[@lang='eng'] :表示選擇所有l(wèi)ang屬性的值等于“eng”的title節(jié)點(diǎn)。

[例13]

/bookstore/book[price] :表示選擇bookstore的book子元素,且被選中的book元素必須帶有price子元素。

[例14]

/bookstore/book[price>35.00] :表示選擇bookstore的book子元素,且被選中的book元素的price子元素值必須大于35。

[例15]

/bookstore/book[price>35.00]/title :表示在例14結(jié)果集中,選擇title子元素。

[例16]

/bookstore/book/price[.>35.00] :表示選擇值大于35的“/bookstore/book”的price子元素。

五、通配符

# “*”表示匹配任何元素節(jié)點(diǎn)。

# “@*”表示匹配任何屬性值。

# node()表示匹配任何類型的節(jié)點(diǎn)。

[例17]

//* :選擇文檔中的所有元素節(jié)點(diǎn)。

[例18]

/*/* :表示選擇所有第二層的元素節(jié)點(diǎn)。

[例19]

/bookstore/* :表示選擇bookstore的所有元素子節(jié)點(diǎn)。

[例20]

//title[@*] :表示選擇所有帶有屬性的title元素。

六、選擇多個(gè)路徑

用“|”選擇多個(gè)并列的路徑。

[例21]

//book/title | //book/price :表示同時(shí)選擇book元素的title子元素和price子元素。

轉(zhuǎn)載于:https://www.cnblogs.com/alwaysyouare/p/3372111.html

總結(jié)

以上是生活随笔為你收集整理的XPath element 格式的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。