XPath語法
選取節(jié)點(diǎn):
XPath 使用路徑表達(dá)式來選取 XML 文檔中的節(jié)點(diǎn)或者節(jié)點(diǎn)集泌枪。這些路徑表達(dá)式和我們在常規(guī)的電腦文件系統(tǒng)中看到的表達(dá)式非常相似栏渺。
表達(dá)式 描述 示例 結(jié)果
nodename 選取此節(jié)點(diǎn)的所有子節(jié)點(diǎn) bookstore 選取bookstore下所有的子節(jié)點(diǎn)
/ 如果是在最前面汁汗,代表從根節(jié)點(diǎn)選取弛槐。否則選擇某節(jié)點(diǎn)下的某個(gè)節(jié)點(diǎn) /bookstore 選取根元素下所有的bookstore節(jié)點(diǎn)
// 從全局節(jié)點(diǎn)中選擇節(jié)點(diǎn)员凝,隨便在哪個(gè)位置 //book 從全局節(jié)點(diǎn)中找到所有的book節(jié)點(diǎn)
@ 選取某個(gè)節(jié)點(diǎn)的屬性 //book[@price] 選擇所有擁有price屬性的book節(jié)點(diǎn)
. 當(dāng)前節(jié)點(diǎn) ./a 選取當(dāng)前節(jié)點(diǎn)下的a標(biāo)簽
謂語:
謂語用來查找某個(gè)特定的節(jié)點(diǎn)或者包含某個(gè)指定的值的節(jié)點(diǎn)橙困,被嵌在方括號(hào)中瞧掺。
在下面的表格中,我們列出了帶有謂語的一些路徑表達(dá)式凡傅,以及表達(dá)式的結(jié)果:
路徑表達(dá)式 描述
/bookstore/book[1] 選取bookstore下的第一個(gè)子元素
/bookstore/book[last()] 選取bookstore下的倒數(shù)第二個(gè)book元素辟狈。
bookstore/book[position()<3] 選取bookstore下前面兩個(gè)子元素。
//book[@price] 選取擁有price屬性的book元素
//book[@price=10] 選取所有屬性price等于10的book元素
通配符
*表示通配符夏跷。
通配符 描述 示例 結(jié)果
- 匹配任意節(jié)點(diǎn) /bookstore/* 選取bookstore下的所有子元素哼转。
@* 匹配節(jié)點(diǎn)中的任何屬性 //book[@*] 選取所有帶有屬性的book元素。
選取多個(gè)路徑:
通過在路徑表達(dá)式中使用“|”運(yùn)算符槽华,可以選取若干個(gè)路徑壹蔓。
示例如下:
//bookstore/book | //book/title