注意我组成术语水平深度来测量树中节点的子维度。
所以想象一下,xpath会像/ html / table / tbody / tr / td那样,而“水平深度”就是5
我试图看看是否有办法根据这个水平深度识别和选择元素。
我怎样才能找到最大深度?
答案 0 :(得分:4)
如果您需要深度> gt = = 5的所有节点:
/*/*/*/*//*
如果您需要所有深度为== 5的节点:
/*/*/*/*/*
实际上,有一个XPath函数count
,您可以将其与ancestor
轴结合使用:
//*[count(ancestor::*) >= 4]
答案 1 :(得分:1)
我认为“垂直深度”和“水平深度”是模糊的。是否有任何理由不使用XPath中已存在的轴术语,并参考“祖先数”和“前兄弟数”?它略显冗长,但并不多,而且a)明确无误,b)术语映射到count(ancestor::*)
和count(preceding-sibling::*)
。