Я хочу преобразовать строковое значение в xslt в целочисленное значение. Я использую xslt 1.0, поэтому я не могу использовать эти функции, поддерживаемые в xslt 2.0. Пожалуйста, помогите.
Преобразование String в Integer в XSLT 1.0
Ответ 1
Добавляя к ответу jelovirt, вы можете использовать number() для преобразования значения в число, затем round(), floor() или ceiling(), чтобы получить целое число.
Пример
<xsl:variable name="MyValAsText" select="'5.14'"/>
<xsl:value-of select="number($MyValAsText) * 2"/> <!-- This outputs 10.28 -->
<xsl:value-of select="floor($MyValAsText)"/> <!-- outputs 5 -->
<xsl:value-of select="ceiling($MyValAsText)"/> <!-- outputs 6 -->
<xsl:value-of select="round($MyValAsText)"/> <!-- outputs 5 -->
Ответ 2
XSLT 1.0 не имеет целочисленного типа данных, только double. Вы можете использовать number()
для преобразования строки в число.