xsl - 我的代码中的字符串翻译 - 需要帮助

时间:2013-07-09 18:01:23

标签: string xslt translate replaceall

我有一个xsl代码,我需要像在Java中一样实现replaceAll功能。我试过了 trasnlate功能,但它没有工作。我不知道在下面的代码中使用该函数的位置和方法,请你帮忙。

<xsl:template match="warning">
    <xsl:param name="drugsSub" select="'false'"/>
    <tr>
      <td class="dataRowBorderBottom rowColor" style="width: 35%; padding-right: 5px; font-size:.85em;">
        **<xsl:apply-templates select="translate(warningId,'/','/ ')">**    This is not working. I want translate function to work both warningId. A value comes for this variable from some other file.
          <xsl:with-param name="drugsSub" select="$drugsSub"/>
        </xsl:apply-templates>
      </td>
      <td class="dataRowBorderBottom rowColor leftPadding" style="width: auto; padding-bottom: 15px; font-size:.85em;">
        <xsl:apply-templates select="severity"/>
      </td>
      <td class="dataRowBorderBottom rowColor leftPadding" style="width: 13%;font-size:.85em;">
        <xsl:apply-templates select="documentationRating"/>
      </td>
      <td class="dataRowBorderBottom rowColor leftPadding" style="width: 35%; padding-top: 3px; font-size:.85em;">
        <xsl:value-of select="warningText"/>
      </td>
    </tr>
  </xsl:template>

1 个答案:

答案 0 :(得分:0)

我可以告诉你为什么代码不起作用:translate()产生一个字符串,你不能将模板应用于字符串(仅限于节点集)。

但我无法告诉你如何修复它,因为我不知道你想要达到的目的。