一.XPath是什么:
在XML文件中查找信息的一套规则/语言,根据XML的元素或者属性进行遍历
二.XPath节点:
在 XPath 中,有七种类型的节点:元素、属性、文本、命名空间、处理指令、注释以及文档(根)节点。XML 文档是被作为节点树来对待的。树的根被称为文档节点或者根节点。
三.选取节点:
XPath 使用路径表达式来选取 XML 文档中的节点或节点集,节点是通过沿着路径 (path) 或者步来选取的
1.特殊符号说明:
(1)nodename:选取此节点的所有子节点
(2)/:从根节点开始选取
(3)//:选取结点,不考虑位置
(4).:选取当前节点
(5). .:选取当前节点的父亲节点
(6)@:选取属性
2.XPath中查找一般按照路径方法查找:
(1)School/Teacher:返回Teacher节点
(2)School/Student:返回所有Student节点
(3)//Student:选取所有Student节点不考虑位置
(4)School//Age:选取School后代中所有Age节点
(5)//@属性名:选取该属性
(6)//Student[@属性名]:选取带有该属性的Student元素
3.谓语-Predicates
(1)/School/Student[1]:选取School下面第一个Student节点
(2)/School/Student[last()]:选取School下面最后一个Student节点
(3)/School/Student[last() - 1]:选取School下面倒数第二个Student节点
(4)/School/Student[poosition() < 3]:选取School下面前两个Student节点
(5)//School[@属性名]:选取所有带有该属性的School节点
(6)//School[@属性名 = “x”]:选取所有该属性值为x的School节点
(7)//School[@属性名]/Age:选取所有带有该属性的School节点的子节点Age
四.XPath运算符:
(1)|:或者
//School | //Teacher:选取School节点或者Teacher节点
(2)还有很多不常见的XPath运算符详见:http://www.w3school.com.cn/xpath/xpath_operators.asp