我对如何在XPath上使用max()函数有疑问,
如果考虑使用xml,我需要选择其中包含最大子<tr>
个数的<td>
元素。
<doc>
<table>
<tbody>
<tr>
<td>aa</td>
<td>bb</td>
<td>cc</td>
<td>dd</td>
</tr>
<tr>
<td>nn</td>
<td>oo</td>
</tr>
<tr>
<td>qq</td>
<td>rr</td>
<td>ss</td>
<td>tt</td>
<td>uu</td>
<td>vv</td>
<td>xx</td>
<td>yy</td>
<td>zz</td>
</tr>
</tbody>
</table>
</doc>
所以我写了以下xpath查询
tr[max(count(child::td))]
但它没有结果。任何人都可以向我建议一个我可以获得<tr>
的查询,其中有<td>
个孩子的最大数量?
答案 0 :(得分:2)
我认为这个表达式可以提供你想要的东西:
td
也就是说,我们希望当前节点td
的计数大于或等于任何先前节点的td
以及任何后续节点tr
的计数。< / p>
您可能需要调整起点(我刚开始使用//
来查看任何sibling
)并且根据所需的关系,following
轴可能需要更改简单地preceding
和JSON(jsonString)
。