您可以使用
/count(ancestor::*))]选择嵌套最多的元素。我认为这只是XPath 2.0。
当与您的子字符串条件结合使用时,我可以在此文档中对其进行测试
<html><head>...</head><body> <someElement>This can be found</someElement> <nested> <someOtherElement>This can <em>not</em> be found most nested</someOtherElement> </nested> <someOtherElement>This can <em>not</em> be found</someOtherElement></body></html>
并带有此XPath 2.0表达式
/count(./*[contains(., 'This can not be found')]/ancestor::*))]
它与包含“找不到此嵌套最多”的元素匹配。
可能有更优雅的方法可以做到这一点。



