XPath/XQuery-Funktionen: String
Die folgenden XPath/XQuey-Erweiterungsfunktionen für Strings werden in der aktuellen Version Ihres Altova-Produkts unterstützt und bieten Zusatzfunktionalitäten für die Verarbeitung von Daten.
Anmerkung zur Benennung von Funktionen und zur Anwendbarkeit der Sprache
Altova-Erweiterungsfunktionen können in XPath/XQuery-Ausdrücken verwendet werden. Dadurch stehen neben den Funktionen in der Standardbibliothek der XPath-, XQuery- und XSLT-Funktionen zusätzliche Funktionen zur Verfügung. •Um Altova-Erweiterungsfunktionen von Funktionen in der Standardbibliothek zu unterscheiden, wurde Altova-Erweiterungsfunktionen in dieser Dokumentation das Suffix [altova:] angehängt, z.B. add-years-to-date [altova:]. •Wenn Sie Altova-Erweiterungsfunktionen jedoch in Ihren XPath/XQuery-Ausdrücken verwenden, müssen Sie die Funktion genau wie jede andere XPath/XQuery-Standardfunktion ohne Präfix oder Suffix verwenden. Verwenden Sie eine Altova-Erweiterungsfunktion folgendermaßen: add-years-to-date(xs:date("2014-01-15"), 10).
|
camel-case(InputString als xs:string) als xs:string XP3.1 XQ3.1 Gibt den Input-String InputString in CamelCase zurück. Der String wird mit Hilfe der Regular Expression '\s' (welches ein Kürzel für das Leerzeichen ist) analysiert. Das erste Zeichen nach einem Leerzeichen oder einer Sequenz aufeinander folgender Leerzeichen, das kein Leerzeichen ist, wird mit einem Großbuchstaben geschrieben. Das erste Zeichen im Ausgabestring wird mit einem Großbuchstaben geschrieben.
altova:camel-case(InputString als xs:string, SplitChars als xs:string, IsRegex als xs:boolean) als xs:string XP3.1 XQ3.1 Konvertiert den Input-String InputString in CamelCase, indem anhand von SplitChars festgelegt wird, welche(s) Zeichen die nächste Konvertierung in Großbuchstaben auslöst. SplitChars wird als Regular Expression verwendet, wenn IsRegex = true() oder als einfache Zeichen, wenn IsRegex = false(). Das erste Zeichen im Ausgabestring wird mit einem Großbuchstaben geschrieben.
|
char(Position as xs:integer) als xs:string XP3.1 XQ3.1 Gibt einen String zurück, der das Zeichen an der durch das Argument Position definierten Position enthält. Dieses Zeichen wird durch Konvertierung des Werts des Kontextelements in xs:string ermittelt. Der Ergebnisstring ist leer, wenn an dem durch das Position Argument gelieferten Index kein Zeichen vorhanden ist.
char(InputString als xs:string, Position als xs:integer) als xs:string XP3.1 XQ3.1 Gibt einen String zurück, der das Zeichen enthält, das sich in dem als InputString Argument gelieferten String an der durch das Argument Position definierten Position befindet. Der Ergebnisstring ist leer, wenn an dem durch das Position Argument gelieferten Index kein Zeichen vorhanden ist.
|
create-hash-from-string(InputString als xs:string) als xs:string XP2 XQ1 XP3.1 XQ3.1 create-hash-from-string(InputString als xs:string, HashAlgo als xs:string) als xs:string XP2 XQ1 XP3.1 XQ3.1 Generiert anhand von InputString mit Hilfe des durch das Argument HashAlgo definierten Hash-Algorithmus einen Hash-String. Es können die folgenden Hash-Algorithmen definiert werden (in Groß- oder Kleinbuchstaben): MD5, SHA-1, SHA-224, SHA-256, SHA-384, SHA-512. Wenn das zweite Argument nicht definiert ist (siehe erste Signatur oben), wird der Hash-Algorithmus SHA-256 verwendet. Beachten Sie, dass Windows Clients SHA-256 nicht unterstützen.
|
first-chars(X-Number as xs:integer) als xs:string XP3.1 XQ3.1 Gibt einen String zurück, der die ersten x Zeichen (bezeichnet durch X-Number) des String enthält, der durch Konvertierung des Werts des Kontextelements in xs:string erzeugt wird.
first-chars(InputString als xs:string, X-Number als xs:integer) als xs:string XP3.1 XQ3.1 Gibt einen String zurück, der die ersten x Zeichen (bezeichnet durch X-Number) des String enthält, das als das Argument InputString angegeben ist.
|
format-string(InputString als xs:string, FormatSequence als item()*) als xs:string XP3.1 XQ3.1 Der Input String (erstes Argument) enthält Positionsparameter (%1, %2, usw.). Jeder Parameter wird durch das String-Element ersetzt, das sich in der (als zweites Argument bereitgestellten) Formatsequenz an der entsprechenden Position befindet. Daher ersetzt des erste Element in der Formatsequenz den Positionsparameter %1, das zweite den Positionsparameter %2, usw. Die Funktion gibt diesen formatierten String zurück, der die Ersetzungen enthält. Wenn für einen Positionsparameter kein String existiert, wird der Positionsparameter selbst zurückgegeben. Dies kommt vor, wenn der Index eines Positionsparameters größer als die Anzahl der Elemente in der Formatsequenz ist.
|
last-chars(X-Number als xs:integer) als xs:string XP3.1 XQ3.1 Gibt einen String zurück, der die letzten x Zeichen (bezeichnet durch X-Number) des String enthält, der durch Konvertierung des Werts des Kontextelements in xs:string erzeugt wird.
last-chars(InputString als xs:string, X-Number als xs:integer) als xs:string XP3.1 XQ3.1
Gibt einen String zurück, der die letzten x Zeichen (bezeichnet durch X-Number) des String enthält, das als das Argument InputString angegeben ist.
|
pad-string-left(StringToPad als xs:string, Repeats als xs:integer, PadCharacter als xs:string) als xs:string XP3.1 XQ3.1 Das Argument PadCharacter ist ein einzelnes Zeichen. Es wird links vom String als Auffüllzeichen eingefügt, um die Anzahl der Zeichen in StringToPad zu erhöhen, damit diese Anzahl dem Ganzzahlwert des Arguments StringLength entspricht. Das Argument StringLength kann jeden beliebigen (positiven oder negativen) Ganzzahlwert haben, Auffüllzeichen werden aber nur verwendet, wenn der Wert von StringLength größer als die Anzahl der Zeichen in StringToPad ist. Wenn StringToPad mehr Zeichen als der Wert von StringLength hat, bleibt StringToPad unverändert.
|
pad-string-right(StringToPad als xs:string, Repeats als xs:integer, PadCharacter als xs:string) als xs:string XP3.1 XQ3.1 Das Argument PadCharacter ist ein einzelnes Zeichen. Es wird rechts vom String als Auffüllzeichen eingefügt, um die Anzahl der Zeichen in StringToPad zu erhöhen, damit diese Anzahl dem Ganzzahlwert des Arguments StringLength entspricht. Das Argument StringLength kann jeden beliebigen (positiven oder negativen) Ganzzahlwert haben, Auffüllzeichen werden aber nur verwendet, wenn der Wert von StringLength größer als die Anzahl der Zeichen in StringToPad ist. Wenn StringToPad mehr Zeichen als der Wert von StringLength hat, bleibt StringToPad unverändert.
|
repeat-string(InputString als xs:string, Repeats als xs:integer) als xs:string XP2 XQ1 XP3.1 XQ3.1 Generiert einen String, der sich zusammensetzt aus dem ersten InputString-Argument, das die Anzahl der Repeats wiederholt wird.
|
substring-after-last(MainString als xs:string, CheckString als xs:string) als xs:string XP3.1 XQ3.1 Falls in MainString CheckString gefunden wird, so wird der Substring zurückgegeben, der in MainString nach CheckString steht. Falls CheckString in MainString nicht gefunden wird, so wird der leere String zurückgegeben. Wenn CheckString ein leerer String ist, so wird der gesamte MainString zurückgegeben. Falls CheckString mehrmals in MainString, vorkommt, so wird der Substring nach der letzten Instanz von CheckString zurückgegeben.
|
substring-before-last(MainString as xs:string, CheckString as xs:string) as xs:string XP3.1 XQ3.1 Falls in MainString CheckString gefunden wird, so wird der Substring zurückgegeben, der in MainString vor CheckString steht. Falls CheckString in MainString nicht gefunden wird, so wird der leere String zurückgegeben. Wenn CheckString ein leerer String ist, so wird der gesamte MainString zurückgegeben. Falls CheckString mehrmals in MainString, vorkommt, so wird der Substring vor der letzten Instanz von CheckString zurückgegeben.
|
substring-pos(StringToCheck als xs:string, StringToFind als xs:string) als xs:integer XP3.1 XQ3.1 Gibt die Zeichenposition der ersten Instanz von StringToFind im String StringToCheck zurück. Die Zeichenposition wird in Form einer Ganzzahl angegeben. Das erste Zeichen von StringToCheck hat die Position 1. Wenn StringToFind in StringToCheck nicht vorkommt, wird die Ganzzahl 0 zurückgegeben. Um den String auf eine zweite oder eine weiter hinten folgende Instanz von StringToCheck zu überprüfen, verwenden Sie die nächste Signatur dieser Funktion.
|
trim-string(InputString als xs:string) als xs:string XP3.1 XQ3.1 Diese Funktion verwendet ein xs:string Argument, entfernt alle voran- und nachgestellten Leerzeichen und gibt einen "getrimmten" xs:string zurück.
|
trim-string-left(InputString als xs:string) als xs:string XP3.1 XQ3.1 Diese Funktion verwendet ein xs:string Argument, entfernt alle vorangestellten Leerzeichen und gibt einen "links getrimmten" xs:string zurück.
|
trim-string-right(InputString als xs:string) als xs:string XP3.1 XQ3.1 Diese Funktion verwendet ein xs:string Argument, entfernt alle nachgestellten Leerzeichen und gibt einen "rechts getrimmten" xs:string zurück.
|