gpt4 book ai didi

xpath - Xpath,用于检索父级内部的所有标签

转载 作者:行者123 更新时间:2023-12-03 17:36:38 28 4
gpt4 key购买 nike

使用xpath在父标签内找到特定标签:

输入样例:

<Table>
<Tbody>
<Row>
<cell><para> <ref> </ref> <ref> </ref> </para> </cell>
</Row>
<Row>
<cell><para> <a1> </a1><ref> </ref> </para> </cell>
</Row>
<Row>
<cell><para> <ref> </ref></para> </cell>
</Row>
<Row>
<cell><para> <b1> </b1></para> </cell>
</Row>
<Row>
<cell><para> <b1> </b1> <c1> </c1></para> </cell>
</Row>
<Row>
<cell><para> <ref> </ref> <c1> </c1></para> </cell>
</Row>
<Thead>


预期产量:


cell1-para它应该返回0
cell2-para它应该返回1
cell3-para它应该返回0
cell4-para应该返回1
cell5-para它应该返回2
cell6-para它应该返回1


如何找出单元格内非ref标签的数量?

段落内可能有多个标签。名称可以是任何东西。但是我们只需要单独检查ref。

最佳答案

XPath不能为每个para元素返回结果-这是您应该使用嵌入XPath的高级语言(例如XSLT,XQuery,Java,PHP,Python,Perl等)执行的操作。

要检索单个结果,例如输入

<cell><para> <ref> </ref> <ref> </ref> </para>  </cell>


使用以下XPath表达式

count(//para/*[not(self::ref)])


在这种情况下,将产生

0




编辑:正如Sean B. Durkin所指出的,这仅适用于XPath 1.0。在Xpath 2.0和3.0中,XPath函数可以是轴步,并且始终对序列进行完整评估,这是可能的。有关XPath 2.0解决方案,请参见 Sean's answer

关于xpath - Xpath,用于检索父级内部的所有标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28230410/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com