基于特殊字符的xslt分割字符串

时间:2020-04-28 20:55:14

标签: xml xslt-1.0 xslt-2.0

我的xml如下

<?xml version='1.0' encoding='utf-8'?>
<DATA>
  <MR>
    <RECORD type="tb1">
      <heading>tblheading</heading>
      <ROWS>
        <ROW> dt1;dt2 </ROW>
        <ROW> dt3;dt4 </ROW>
        <ROW> dt5;dt5 </ROW>
      </ROWS>
    </RECORD>
   </MISMATCHRECORDS>
</DATA>

,我想使用xslt 2.0将其转换为html以下。我的xslt看起来如何?

<table>
<tr colspan="2"><th>tblHeading</th></tr>
<tr><td>dt1</td><td>dt2</tr>
<tr><td>dt3</td><td>dt4</tr>
<tr><td>dt5</td><td>dt6</tr>
</table>

提前谢谢。

1 个答案:

答案 0 :(得分:0)

最简单的可能是

<xsl:template match="ROW">
  <tr>
    <xsl:for-each select="tokenize(normalize-space(.), ';')">
       <td><xsl:value-of select="."/></td>
    </xsl:for-each>
  </tr>
</xsl:template>