qq793076808
v二毛
2015-06-05 02:39
采纳率: 100%
浏览 3.5k

XSLT 实现字符串的连接,请大神看下

 <data>
  <field name='id'>123</field>
  <field name='id'>abc</field>
</data>

 <data>
  <field name='id'>123|abc</field>
</data>

需求:就是把相同节点,相同属性的值,连接成一个字符串,并用|分隔符隔开。

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • Tiger_Zhao
    Tiger_Zhao 2015-06-08 01:06
    已采纳
        <?xml version="1.0" encoding="ISO-8859-1"?>
        <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
        <xsl:output method="xml" version="1.0" encoding="iso-8859-1" indent="yes"/>
    
        <xsl:template match="/">
        <xsl:for-each select="data">
            <data>
                <field name='id'>
                    <xsl:for-each select="field">
                        <xsl:if test="position()=1"><xsl:value-of select="."/></xsl:if>
                        <xsl:if test="position()!=1">|<xsl:value-of select="."/></xsl:if>
                    </xsl:for-each>
                </field>
            </data>
        </xsl:for-each>
        </xsl:template>
        </xsl:stylesheet>
    
    点赞 评论
  • Tiger_Zhao
    Tiger_Zhao 2015-06-05 06:21

    不是单纯的XSLT可以转化的。XSL只能判断父子关系、匹配节点或属性,不能对兄弟关系的节点进行比较。

    点赞 评论

相关推荐