首页 > 解决方案 > 有没有办法在 XPath 中指定最低的祖先?

问题描述

ancestor表示Selects all ancestors (parent, grandparent, etc.) of the current node根据https://www.w3schools.com/xml/xpath_axes.asp

有没有办法指定最低的祖先而不是所有的祖先?

标签: xmlxpath

解决方案


最低的祖先是父母,由..or给出parent::node()

最高的祖先将是根节点,由/;给出 或者,如果您想要最高的祖先元素:/*.

另请参阅XML 中的根节点、根元素和文档元素有什么区别?

请注意,如果您想选择满足谓词的最低祖先,请将 a 附加[1]到谓词 - 祖先从起点向上排序,而不是从根向下排序。例如,

//e[@id="e1"]/ancestor::*[@class][1]

e1 e将选择具有@class属性的元素的最低祖先。


推荐阅读