一、路径:
. 当前节点
.. 父节点
/ 从根节点开始
// 从任意节点开始
二、引用:
@ 属性
nodename 当前节点的所有子结点
[0],[1],[last()-1] 下标方式引用
* 匹配任何元素节点
@* 匹配任何属性节点
node() 匹配任何类型的节点
| 连接多个匹配结果
三、运算符:
+, -, *, div, =, !=, >, >=, <, <=, and, or, mod
四、常用函数:
last() 节点数组的最后一个
position() 下标索引,从1开始
text() 节点的文本内容
contains (@attr, 'value') 模糊匹配
starts-with(@attr, 'value') 是否以指定字符开头
count(@attr) 匹配次数
string-length() 返回字符串的字符数,你应该用<替代<, 用>代替>
normalize-space() 函数删除了前部和尾部的空格, 并且把连续的空格串替换为一个单一的空格
五、举例:
/bookstore/book[last()]
选取属于 bookstore 子元素的最后一个 book 元素。
/bookstore/book[last()-1]
选取属于 bookstore 子元素的倒数第二个 book 元素。
/bookstore/book[position()<3]
选取最前面的两个属于 bookstore 元素的子元素的 book 元素。
/bookstore/book[@id='1' and contains (@title, 'Java')]
选取ID为1,标题中含有Java的book元素。
参考网址:
http://www.w3school.com.cn/xpath /xpath_syntax.asp
http://msdn.microsoft.com/zh-cn/library/ms256115(VS.80).aspx