我想使用XPath来获得第一个父祖先.我想解析这样的代码:
<div>
<span class="city">City 1</span>
<div class="annonce">
<span class="item">Item1</span>
</div>
</div>
<div>
<div class="annonce">
<span class="item">Item2</span>
</div>
</div>
<div>
<span class="city">City 2</span>
<div class="annonce">
<span class="item">Item3</span>
</div>
</div>
<div>
<div class="annonce">
<span class="item">Item4</span>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
有了XPath,我想得到第一个父城.例如,对于Item1,Item2我想拥有City 1而对于Item3,Item4我想拥有City 2
有可能吗?PS:我无法编辑源代码.
谢谢
我想使用XPath来获得第一个父祖先.
该术语不正确且具有误导性."父祖先"没有意义,因为父母永远是祖先.
也.您要选择的元素不是任何span[@class='item']元素的父元素或祖先元素.
最后,提供的文本不是格式良好的XML文档.在格式良好的XML文档中,只有一个顶级元素.
这说,
用途:
preceding::span[@class='city'][1]
Run Code Online (Sandbox Code Playgroud)
这将选择span上下文(当前)节点的第一个前一个元素,其class属性的字符串值为字符串"city".