节点的关系: 父(Parent) 子(Children) 同胞(Sibling) 先辈(Ancestor) 后代(Descendant)
路径表达式
nodename 选取此节点的所有子节点 / 从根节点选取 // 从匹配选择的当前节点选择文档中的节点,而不考虑它们的位置 . 选取当前节点 .. 选取当前节点的父节点 @ 选取属性
谓语(Predicates) 谓语被嵌在方括号中。 /bookstore/book[1] /bookstore/book[last()] /bookstore/book[price<10] 例如:查找 book 标签中属性 id 为 my 的节点,应写成 /bookstore/book[@id='my']
通配符
* 匹配任何元素节点 @* 匹配任何属性节点 node() 匹配任何类型的节点
XPath 轴
ancestor 选取当前节点的所有先辈(父、祖父等)
ancestor-or-self 选取当前节点的所有先辈(父、祖父等)以及当前节点本身
attribute 选取当前节点的所有属性
child 选取当前节点的所有子元素。
descendant 选取当前节点的所有后代元素(子、孙等)。
descendant-or-self 选取当前节点的所有后代元素(子、孙等)以及当前节点本身。
following 选取文档中当前节点的结束标签之后的所有节点。
namespace 选取当前节点的所有命名空间节点
parent 选取当前节点的父节点。
preceding 选取文档中当前节点的开始标签之前的所有节点。
preceding-sibling 选取当前节点之前的所有同级节点。
self 选取当前节点。
转载于:https://www.cnblogs.com/xxj-jing/archive/2012/03/16/2890078.html