compare
Die compare-Funktion erhält zwei Strings als Argumente und vergleicht diese unter Verwendung der als Argument bereitgestellten Collation alphabetisch und überprüft, ob diese identisch sind. Wenn string1 im Alphabet vor string2 (z.B. bei zwei Strings A und B) vorkommt, dann gibt die Funktion -1 zurück. Wenn die beiden Strings gleich sind (z.B. A und A), gibt die Funktion 0 zurück. Wenn string1 im Alphabet nach string2 (z.B. bei zwei Strings B und A) vorkommt, dann gibt die Funktion 1 zurück.
![mf-func-xpath2-compare2](./images/mf-func-xpath2-compare2.png)
Sprachen
XQuery, XSLT 2.0, XSLT 3.0..
Parameter
Name | Typ | Beschreibung |
---|---|---|
string1 | xs:string | Der erste Input-String. |
string2 | xs:string | Der zweite Input-String. |
collation | xs:string | Definiert, welche Collation für den String-Vergleich verwendet werden soll. Dieser Input kann aus der Ausgabe der Funktion default-collation stammen oder kann eine Collation wie z.B. http://www.w3.org/2005/xpath-functions/collation/html-ascii-case-insensitive sein. |
Beispiel
Im folgenden Mapping werden die Strings "A" und "a" mit Hilfe der durch eine Konstante bereitgestellten Collation http://www.w3.org/2005/xpath-functions/collation/html-ascii-case-insensitive, in der die Groß- und Kleinschreibung keine Rolle spielt, verglichen.
![mf-func-xpath2-compare-example1](./images/mf-func-xpath2-compare-example1.png)
XSLT 2.0 Mapping
Das Ergebnis des obigen Mappings ist 0, was bedeutet, dass beide Strings als identisch betrachtet werden. Wenn Sie die Collation jedoch durch die durch die Funktion default-collation bereitgestellte Collation ersetzen, wird stattdessen die Standard-Unicode Codepoint Collation verwendet und das Ergebnis des Mappings ist -1 ("A" kommt im Alphabet vor "a").
![mf-func-xpath2-compare-example2](./images/mf-func-xpath2-compare-example2.png)