2013-04-09 47 views
-2

這裏解析的文字是我的xml:請幫我從XML使用XSLT

<catalog> 
<cd> 
    <title>Empire Burlesque</title> 
    <year>1985</year> 
</cd> 
<cd> 
    <title>Hide your heart</title> 
    <year>1988</year> 
</cd> 
<cd> 
    <title>Greatest Hits</title> 
    <year>1982</year> 
</cd> 
</catalog> 

而且我想用XSLT解析這個文本,結果是這樣的:

Empire Burlesque, Hide your heart, Greatest Hits, 1985, 1988, 1982, 

謝謝任何幫助!

回答

2

使用XSLT 2.0,你可以簡單地做

<xsl:template match="/"> 
    <xsl:value-of select="//cd/title, //cd/year" separator=", "/> 
</xsl:template> 

使用XSLT 1.0,您可以使用

<xsl:template match="/"> 
    <xsl:for-each select="//cd/title"> 
    <xsl:if test="position() &gt; 1>, </xsl:if> 
    <xsl:value-of select="."/> 
    </xsl:for-each> 
    <xsl:text>, </xsl:text> 
    <xsl:for-each select="//cd/year"> 
    <xsl:if test="position() &gt; 1>, </xsl:if> 
    <xsl:value-of select="."/> 
    </xsl:for-each> 
</xsl:template>