Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xslt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xml 删除冒号并在XSLT中将其转换为数字_Xml_Xslt - Fatal编程技术网

Xml 删除冒号并在XSLT中将其转换为数字

Xml 删除冒号并在XSLT中将其转换为数字,xml,xslt,Xml,Xslt,我有一个XML元素: 00:08:90。 我正在使用XSLT创建包含系统所需元素的XML 首先,我希望XSLT删除冒号,使其看起来像:000890 然后我想做一个if测试,检查这个数字是否小于(您可以使用translate函数删除冒号: translate(., ':', '') 然后,对于数值检查,您可以执行以下操作: number(.) < 1000 编号(.)

我有一个XML元素:
00:08:90
。 我正在使用XSLT创建包含系统所需元素的XML

首先,我希望XSLT删除冒号,使其看起来像:000890
然后我想做一个if测试,检查这个数字是否小于(您可以使用translate函数删除冒号:

translate(., ':', '')
然后,对于数值检查,您可以执行以下操作:

number(.) < 1000
编号(.)<1000
如果xml是这样的:

<xml>
    <tag>00:08:90</tag>
</xml>

00:08:90
然后可以使用以下XSLT:

<xsl:variable name="test" select="number(translate(/xml/tag, ':', '')) &lt; 1000" />
<!-- $test will = true() -->


检查此项以获取
number()
的可接受值,以执行正确的错误检查。

您可以使用translate函数删除冒号:

translate(., ':', '')
<xsl:if test="number(translate(duration, ':', '')) &lt; 1000">
  <!-- do something -->
</xsl:if>
然后,对于数值检查,您可以执行以下操作:

number(.) < 1000
编号(.)<1000
如果xml是这样的:

<xml>
    <tag>00:08:90</tag>
</xml>

00:08:90
然后可以使用以下XSLT:

<xsl:variable name="test" select="number(translate(/xml/tag, ':', '')) &lt; 1000" />
<!-- $test will = true() -->

检查此项以获得
number()
的可接受值,以执行正确的错误检查。


<xsl:if test="number(translate(duration, ':', '')) &lt; 1000">
  <!-- do something -->
</xsl:if>
除非无法使持续时间值无效/格式错误,否则请特别注意其长度以及
number()
返回的
'NaN'

除非无法使持续时间值无效/格式错误,否则请特别注意它的长度以及
number()

您使用的是哪个XSLT引擎?.Net?您使用的是哪个XSLT引擎?.Net?返回的
'NaN'
值?