xslt - 如何在 XSLT 中进行字符串操作?

标签 xslt string xpath

我的 xslt 中有以下代码块;

      <xsl:when test="StatusData/Status/Temperature > 27">
        <td bgcolor="#ffaaaa">              
          <xsl:value-of select="StatusData/Status/Temperature" />              
        </td>
      </xsl:when>

但是您可能会猜到,当值是 34,5 而不是 34.5 时,它被识别为字符串,这使得整数比较变得不可能。我想用 .将是需要 char 替换的解决方案。我的问题是我该怎么做
或者
了解更多有关 XSLT 中的字符串操作的信息会很棒...

最佳答案

有一个translate() XPath 中的函数:

test="translate(StatusData/Status/Temperature, ",", ".") > 27"

此外,您应该使用 number 函数,它将其参数转换为数字(或 NaN,如果失败):
test="number(translate(StatusData/Status/Temperature, ",", ".")) > 27.0"

documentation for translate() documentation for number() 在 w3.org。

关于xslt - 如何在 XSLT 中进行字符串操作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/268116/

相关文章:

python - 如何从整数列表中删除所有字符串元素,整数旁边有字符串 [Python]

xml - 使用xsl:key测试前一个同级和匹配后代

java - 获取 xml 元素值中的 HTML 或 XHTML 文本

java outOfMemoryError 与 stringbuilder

python - Scrapy中如何下载某一特定节点下的所有图片?

xml - 简单的前同级选择返回意外结果

javascript - 将 XPath 表达式与 javascript 变量进行匹配

java - 带有命名空间的 XSLT 属性

xml - 获取当前节点的值

c++ - 需要用户输入字符串/检查字符串长度(C++)