XPath:递归祖先搜索

djs*_*ner 1 xpath parent ancestor

选择当前节点后,我希望找到一个元素<name> [./name]并返回文本内容.如果<name>当前所选节点中不存在元素,我希望以[./parent::name]递归方式检查父元素,依此类推,直到根,返回元素所在的最近父元素的值.

可以用XPath完成吗?

Mar*_*wis 6

(编辑:我第一次误解了这个问题)

我建议用

ancestor-or-self::name[1]
Run Code Online (Sandbox Code Playgroud)

这将查找所有name元素,从self,parent等开始,并在距离self越来越远的位置对它们进行排序.所以选择[1]会给你最近的一个.