求一个例子,获得节点内的值的长度,并根据长度做相应处理,例如:
<?xml version="1.0"?>
<root>
<book>
<name>心理学详析</name>
<writer>彤希仁</writer>
</book>
<book>
<name>C++ Programming Parse</name>
<writer>老外</writer>
</book>
</root>
第二个book/name的值超过了10个字节,我想取前10个字节,然后后面补省略号,变成C++ Progar......这样的格式,请问xsl如何做到这点
<xsl:template match="name">
<xsl:choose>
<xsl:when test="string-length(.) > 10">
<xsl:value-of select="concat(substring(., 1, 10), ......)"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="."/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>