web-dev-qa-db-fra.com

Convertir une chaîne en entier dans XSLT 1.0

Je veux convertir une valeur de chaîne en xslt en une valeur entière. J'utilise xslt 1.0, donc je ne peux pas utiliser les fonctions prises en charge dans xslt 2.0. Veuillez aider.

35
Kapil

Pour ajouter à la réponse de jelovirt, vous pouvez utiliser number () pour convertir la valeur en nombre, puis round (), floor () ou plafond () pour obtenir un entier entier.

Exemple

<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 -->
60
jeffreypriebe

XSLT 1.0 n'a pas de type de données entier, seulement double. Vous pouvez utiliser number() pour convertir une chaîne en nombre.

32
jelovirt