鉴于XML:
<issueDate day="30" month="09" year="2015"/>
我想构建一个输出的字符串:2015-09-30
这有效:
<xsl:variable name="issueDate" as="xs:string">
<xsl:value-of select="concat(//issueDate/@year,'-',//issueDate/@month,'-',//issueDate/@day)" />
</xsl:variable>
...
<xsl:value-of select="$issueDate"/>
但这引发了一个错误(预期的EOF,发现&#39;,&#39;):
<xsl:value-of select="//issueDate/@year,//issueDate/@month,//issueDate/@day" separator="-" />
使用分隔符属性选择多个值的语法是什么?
答案 0 :(得分:0)
如果您可以使用XPath-2.0 / XSLT-2.0,则可以使用string-join
:
<xsl:for-each select="//issueDate">
<xsl:value-of select="string-join( (@year, @month, @day), '-')" />
<xsl:text> </xsl:text> <!-- just for pretty output -->
</xsl:for-each>