📅  最后修改于: 2023-12-03 15:35:47.822000             🧑  作者: Mango
XPath中的轴用于在文档中沿特定方向查找节点。XPath标准定义了13个轴类型,每个轴类型都有其独特的功能。在本文中,我们将学习XPath轴及其细节。
ancestor轴: 选择所有当前节点的祖先节点(不包括根节点)。
ancestor::node()
**ancestor-or-self轴:**选择所有当前节点的祖先节点,以及当前节点本身。
ancestor-or-self::node()
**attribute轴:**选择所有当前节点的属性节点。
attribute::*
**child轴:**选择所有当前节点的子节点。
child::node()
**descendant轴:**选择所有当前节点的后代节点(不包括子节点)。
descendant::node()
**descendant-or-self轴:**选择所有当前节点的后代节点,以及当前节点本身。
descendant-or-self::node()
**following轴:**选择当前节点之后的所有节点。
following::node()
**following-sibling轴:**选择当前节点之后的所有同级节点。
following-sibling::node()
**namespace轴:**选择当前节点的所有命名空间节点。
namespace::*
**parent轴:**选择当前节点的父节点。
parent::node()
**preceding轴:**选择当前节点之前的所有节点。
preceding::node()
**preceding-sibling轴:**选择当前节点之前的所有同级节点。
preceding-sibling::node()
**self轴:**选择当前节点本身。
self::node()
使用轴时,我们需要指定一个有效的节点作为参考点,通常是一个元素节点。例如,我们想获取所有祖先节点和当前节点本身的名称,我们可以使用以下XPath表达式:
ancestor-or-self::*/name()
这将返回给定节点的所有祖先节点名称和当前节点本身的名称。我们还可以基于其他轴和谓词过滤器来进一步过滤此表达式。
轴是XPath中一个强大的工具,它允许我们根据节点的位置和关系选择节点。本文介绍了13个不同类型的XPath轴,每个轴都有其独特的功能。当使用轴时,我们需要指定一个有效的参考节点,以便确定节点的位置。