谓词过滤

XPath 教程 · 第 5 章 · 6 次浏览

轴定义从当前节点出发的方向集合:子、父、兄弟、后代、祖先。平时写简写语法,但理解轴能解决复杂定位。

常用轴

  • child:::子节点(默认)
  • parent:: / ..:父节点
  • ancestor:::祖先
  • following-sibling:: / preceding-sibling:::后续/前序兄弟
  • following:: / preceding:::后面/前面所有节点
  • self:: / .:自身
  • descendant:::后代

代码示例

//book/child::title          # 等价 //book/title
//book/..                    # book 的父节点
//title/parent::*            # title 的父元素
//price/preceding-sibling::title   # price 前面的 title 兄弟
//title/following-sibling::price   # title 后面的 price 兄弟
//book/ancestor::*           # book 的所有祖先
//book/self::node()          # 自身