2009-04-29 11 views

Antwort

6

Dies kann mit der Xpath ABS-Funktion erreicht werden.

<xsl:value-of select="abs(DifferenceInDays)"/> 
30

In XPath 1.0 (XSLT 1.0) den folgenden Ausdruck:

$vNum*($vNum >=0) - $vNum*($vNum &lt; 0) 

In XPath 2.0 (XSLT 2.0) verwenden, um die Funktion abs().

1

diffInDays * (1 - 2 * (diffInDays & lt; 0))

-1

tatsächlich einige der Antworten erschweren das Leben viel zu viel für XSLT 1.0 ist es viel einfacher. Unter Verwendung der Zahlenformatierung können Sie eine Struktur für positive und negative Zahlen definieren, das Standardnegativ ist -0, Sie können jedoch auch eigene definieren.

<xsl:value-of select='format-number(DifferenceInDays,"0;0")'/> 

Der obige Code wird der Absolutwert der Differenz in Tagen nur mit der mitgelieferten Formatierungsfunktion.

+0

In welchem ​​Prozessor funktioniert das? –

+0

sollte soweit ich weiß bewusst funktionieren. Die Formatnummernfunktionalität wird in der XSLT 1.0-Spezifikation bereitgestellt. –

+0

Haben Sie das mit ** einem ** von ihnen getestet? Wenn ja, in welchem ​​hat es funktioniert? –

Verwandte Themen