【发布时间】:2013-01-11 06:30:46
【问题描述】:
我正在使用下面的 XML
<Root>
<sample>1</sample>
<sample>2</sample>
<sample>3</sample>
<sample>4</sample>
<sample>5</sample>
<sample>6</sample>
</Root>
我想得到下面给出的输出
<sample>123456</sample>
我正在使用下面的 XSLT 来获得上面的输出。但我得到的输出是这样的。
<sample>1</sample>
<sample>23456</sample>
<sample>2</sample>
<sample>3456</sample>
<sample>3</sample>
<sample>456</sample>
<sample>4</sample>
<sample>56</sample>
<sample>5</sample>
<sample>6</sample
><sample>6</sample>
<sample></sample>
这是我尝试过的 XSL 代码:
<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="sample">
<presample>
<xsl:value-of select="."/>
<xsl:variable name="code" select="following-sibling::sample" />
<xsl:for-each select="following-sibling::sample">
<xsl:if test="not(preceding-sibling::sample)">
<xsl:value-of select="."/>
</xsl:if>
</xsl:for-each>
</presample>
</xsl:template>
</xsl:stylesheet>
请帮助我更正此 XSLT 以获得上述所需的输出。
【问题讨论】:
-
user1968895,您可能对更高效的分组方法感兴趣,例如 Muenchian。