XSLT中的字符串拼接

为一个需求中,需要用到xslt的字符串拼接,换成java的思维可以这样去说这个问题:

假设有个对象叫Return,它有period和value属性,想把Return的数组(假设叫Return[] returns)中period取出来拼接成字符串,java中很简单,声明一个StringBuilder 或者 StringBuffer,把returns进行循环,把其中的period的值取出来,用append()方法追加到stringbuild/stringbuffer对象中去;这样基本就完事了...

但是xslt不是java,没有StringBuilder/StringBuffer,也许可以通过xslt调用java的方式去实现,但资源有限,没有精力去做,所以还是选择xslt原生的方法去做:
用xslt中的for-each来代替java中的for循环,原先受java思维所限制,我也想着去声明一个变量,把值拼接好之后,放到循环中去继续拼接,但最终被证明,这种方式是错误的;后来在
http://www.cnblogs.com/goody9807/archive/2007/08/15/856363.html找到了一种适合我的解决方案:

如何在xsl拼接字符串

<xsl:for-each select="exslt:node-set($MatchIncomeMapper)/Item[BitHelper:isSelected(number($MatchIncome),Value)]">
<xsl:if test="position()>1">,</xsl:if>
<xsl:value-of select="Name"/>
</xsl:for-each>

 


position方法是xsl内置的方法,意思是取得每次循环中的位置,上面的循环可以达到拼接字符串的效果

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值