gpt4 book ai didi

xml - XSLT 中的变量增量

转载 作者:数据小太阳 更新时间:2023-10-29 02:07:23 25 4
gpt4 key购买 nike

我有一个像这样的xml文件

<node>
<elm val="data1"/>
<elm val="data2"/>
<elm val="data3"/>
<elm val="data4"/>
<elm val="data5"/>
<elm val="data6"/>
<elm val="data7"/>
</node>

我需要为这个 xml 文件编写一个 xslt 以像这样的表格格式显示

  1 dat1
2 dat2
3 dat3
4 dat4
5 dat5
6 dat6
7 dat7

请帮我做一下

最佳答案

<xsl:tempate match="node">
<table>
<xsl:call-template select="elm"/>
</table>
</xsl:template>

<xsl:template match="elm">
<tr>
<td>
<xsl:value-of select="count(preceding-sibling::elm) + 1"/>
</td>
<td>
<xsl:value-of select="@val"/>
</td>
</tr>
</xsl:template>

或者,如果需要准确的输出,请为 elm 使用以下模板。

<xsl:template match="elm">
<xsl:param name="pos" select="count(preceding-sibling::elm) + 1"/>
<tr>
<td>
<xsl:value-of select="$pos"/>
</td>
<td>
<xsl:text>dat</xsl:text>
<xsl:value-of select="$pos"/>
</td>
</tr>
</xsl:template>

或者在文本输出的情况下:

<xsl:tempate match="node">
<xsl:foreach select="elm">
<xsl:value-of select="count(preceding-sibling::elm) + 1"/>
<xsl:text> dat</xsl:text>
<xsl:value-of select="count(preceding-sibling::elm) + 1"/>
<xsl:text disable-output-escaping="yes">&amp;#xA;</xsl:text>
</xsl:foreach>
</xsl:template>

关于xml - XSLT 中的变量增量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2912902/

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