当前位置 : 主页 > 网页制作 > xml >

xml – XSL 1.0如何一次将div标签添加到两个元素/文本中

来源:互联网 收集:自由互联 发布时间:2021-06-13
我有一个与此类似的 XML a btext1/b btext2/b btext3/b ..... ..../a 这是所需的输出 divtext1 text2/divdivtext3 text4/div 使用xsl foreach可以轻松地为所有文本添加包装div或为每个文本添加单独的div.如何在一
我有一个与此类似的 XML

<a>
  <b>text1</b>
  <b>text2</b>
  <b>text3</b>
   .....
   ....
</a>

这是所需的输出

<div>text1 text2</div>
<div>text3 text4</div>

使用xsl foreach可以轻松地为所有文本添加包装div或为每个文本添加单独的div.如何在一次需要为2个文本添加div的情况下完成上述要求?

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  <xsl:output method="xml" indent="yes"/>

  <xsl:template match="/">
    <xsl:apply-templates select="a/b[position() mod 2 = 1]"/>
  </xsl:template>

  <xsl:template match="b">
    <div>
      <xsl:value-of select="concat(., ' ', following-sibling::b)"/>
    </div>
  </xsl:template>

</xsl:stylesheet>
网友评论