gpt4 book ai didi

xslt - XSL 使用任意级别的节点索引

转载 作者:行者123 更新时间:2023-12-02 11:57:27 25 4
gpt4 key购买 nike

我有以下 xml:

<content>
<p>para 1<an>test 1</an></p>
<p>para 2<an>test 2</an></p>
<p>para 3<an>test 3</an></p>
</content>

我在 xsl 中有以下表达式:

<xsl:template match="/">
<xsl:text>Count: </xsl:text>
<xsl:value-of select="count(/content//an)" />
<xsl:text> Content: </xsl:text>
<xsl:value-of select="/content//an[2]" />
</xsl:template>

为什么/content//an[1] 返回“test 1”而/content//an[2] 返回“”?计数显示有 3 个。我正在使用 libxslt。

谢谢!

最佳答案

这是常见问题解答

使用 // 缩写时必须小心。

//SomeName[1]

表示:选择文档中作为其父级的第一个 SomeName 子级的所有 SomeName 元素。通常选择的节点不止一个(甚至是所有节点)。

仅选择文档中第 $k 个 SomeName 元素的正确方法是:

(//SomeName)[$k]

根据您的情况,请使用:

(/内容//an)[2]

记住:[] 运算符比 // 缩写具有更高的优先级(绑定(bind)更强)。

关于xslt - XSL 使用任意级别的节点索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5391556/

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