Fonctions XPath/XQuery : Chaîne
Les fonctions d'extension de chaîne d'Altova peuvent être utilisées dans les expressions XPath et XQuery et proposent des fonctions supplémentaires pour le traitement des données.
Note concernant le nommage de fonctions et de l'applicabilité de la langue
Les fonctions d'extension Altova peuvent être utilisées dans les expressions XPath/XQuery. Elles fournissent des fonctions supplémentaires aux fonctions d'ores et déjà disponibles dans la librairie standard des fonctions XPath, XQuery et XSLT. •Afin de distinguer les fonctions d'extension Altova des fonctions dans la librairie standard, les fonctions d'extension Altova sont nommées dans cette documentation avec un suffixe [altova:]. Par exemple : add-years-to-date [altova:]. •Néanmoins, lorsque vous utilisez des fonctions d'extension Altova dans vos expressions XPath/XQuery, vous devez utiliser la fonction sans préfixe ou suffixe, comme si vous utilisiez une fonction standard XPath/XQuery. Voici un exemple d'extension Altova : add-years-to-date(xs:date("2014-01-15"), 10).
|
camel-case(InputString as xs:string) asxs:string XP3.1 XQ3.1 Retourne la chaîne d'entrée InputString en CamelCase. La chaîne est analysée en utilisant l'expression régulière '\s' (qui est un raccourci pour le caractère d'espace blanc). Le premier caractère non-espace blanc après un espace blanc ou une séquence de plusieurs espaces blancs est mis en majuscule. Le premier caractère dans la chaîne de sortie est mis en majuscule.
camel-case(InputString as xs:string, SplitChars as xs:string, IsRegex as xs:boolean) asxs:string XP3.1 XQ3.1 Convertit la chaîne d'entrée InputString en camel case en utilisant SplitChars pour déterminer le/s caractère/s qui déclenche/nt la prochaine mise en majuscule. SplitChars est utilisé en tant qu'expression régulière quand IsRegex = true(), ou en tant que caractères normaux quand IsRegex = false(). Le premier caractère dans la chaîne de sortie est mis en majuscule.
|
char(Position as xs:integer) asxs:string XP3.1 XQ3.1 Retourne une chaîne contenant le caractère à la position spécifiée par l'argument Position, dans la chaîne obtenue en convertissant la valeur de l'item contextuel en xs:string. La chaîne de résultat sera vide si aucun caractère n'existe à l'index soumis par l'argument Position.
char(InputString as xs:string, Position as xs:integer) asxs:string XP3.1 XQ3.1 Retourne une chaîne contenant la caractère à la position spécifiée par l'argument Position, dans la chaîne soumise en tant que l'argument InputString. La chaîne de résultat sera vide si aucun caractère n'existe à l'index soumis par l'argument Position.
|
create-hash-from-string(InputString as xs:string) asxs:string XP2 XQ1 XP3.1 XQ3.1 create-hash-from-string(InputString as xs:string, HashAlgo as xs:string) asxs:string XP2 XQ1 XP3.1 XQ3.1 Génère un string de hashage depuis InputString en utilisant l'algorithme de hashage spécifié par l'argument HashAlgo. Les algorithmes de hashage suivants peuvent être spécifiés (en majuscule ou en minuscule) : MD5, SHA-1, SHA-224, SHA-256, SHA-384, SHA-512. Si le deuxième argument n'est pas spécifié (voir la première signature ci-dessus), l'algorithme de hashage SHA-256 sera utilisé.
|
first-chars(X-Number as xs:integer) asxs:string XP3.1 XQ3.1 Retourne une chaîne contenant le premier X-Number des caractères de la chaîne obtenue en convertissant la valeur de l'item de contexte en xs:string.
first-chars(InputString as xs:string, X-Number as xs:integer) asxs:string XP3.1 XQ3.1 Retourne une chaîne contenant le premier X-Number des caractères de la chaîne soumise en tant que l'argument InputString.
|
format-string(InputString as xs:string, FormatSequence as item()*) asxs:string XP3.1 XQ3.1 Le string d'entrée (premier argument) contient des paramètres de position (%1, %2, etc). Chaque paramètre est remplacé par l'item de string qui est situé dans la position correspondante dans la séquence de format (soumise en tant que le second argument). Donc le premier item dans la séquence de format remplace de paramètre de positionnement %1, le second item remplace %2, etc. La fonction retourne ce string formaté qui contient les remplacements. Si aucun string n'existe pour un paramètre de positionnement, alors le paramètre de positionnement lui-même est retourné. Cela se produit lorsque l'index d'un paramètre de positionnement est supérieur au nombre d'items dans la séquence de format.
|
last-chars(X-Number as xs:integer) asxs:string XP3.1 XQ3.1 Retourne une chaîne contenant le dernier X-Number de caractères de la chaîne obtenue en convertissant la valeur de l'item contextuel en xs:string.
last-chars(InputString as xs:string, X-Number as xs:integer) asxs:string XP3.1 XQ3.1 Retourne une chaîne contenant le dernier X-Number de caractères de la chaîne soumise en tant que l'argument InputString.
|
pad-string-left(StringToPad as xs:string, StringLength as xs:integer, PadCharacter as xs:string) asxs:string XP3.1 XQ3.1 L'argument PadCharacter est un caractère unique. Il est bourré à la gauche de la chaîne pour augmenter le nombre de caractères dans StringToPad de manière à ce que ce nombre soit équivalent à la valeur d'entier de l'argument StringLength. L'argument StringLength peut avoir toute valeur d'entier (positive ou négative), mais le padding n'aura lieu que si la valeur de StringLength est supérieure au nombre de caractères dans StringToPad. Si StringToPad. comporte plus de caractères que la valeur de StringLength, alors StringToPad ne sera pas modifié.
|
pad-string-right(StringToPad as xs:string, StringLength as xs:integer, PadCharacter as xs:string) asxs:string XP3.1 XQ3.1 L'argument PadCharacter est un caractère unique. Il est bourré à la droite de la chaîne pour augmenter le nombre de caractères dans StringToPad de manière à ce que ce nombre soit équivalent à la valeur d'entier de l'argument StringLength. L'argument StringLength peut avoir toute valeur d'entier (positive ou négative), mais le padding n'aura lieu que si la valeur de StringLength est supérieure au nombre de caractères dans StringToPad. Si StringToPad. comporte plus de caractères que la valeur de StringLength, alors StringToPad ne sera pas modifié.
|
repeat-string(InputString as xs:string, Repeats as xs:integer) asxs:string XP2 XQ1 XP3.1 XQ3.1 Génère une chaîne qui est composée du premier argument InputString répété Repeats nombre de fois.
|
substring-after-last(MainString as xs:string, CheckString as xs:string) asxs:string XP3.1 XQ3.1 Si CheckString est trouvé dans MainString, alors la sous-chaîne qui se produit après CheckString dans MainString est retournée. Si CheckString n'est pas trouvé dans MainString, la chaîne vide est retournée. Si CheckString est une chaîne vide, alors MainString est retourné dans sa totalité. S'il y a plus d'une survenance de CheckString dans MainString, alors la sous-chaîne après la dernière survenance de CheckString est retournée.
|
substring-before-last(MainString as xs:string, CheckString as xs:string) asxs:string XP3.1 XQ3.1 Si CheckString est trouvé dans MainString, alors la sous-chaîne qui se produit avant CheckString dans MainString est retournée. Si CheckString n'est pas trouvé dans MainString, ou si CheckString est une chaîne vide, la chaîne vide est retournée. S'il y a plus d'une survenance de CheckString dans MainString, alors la sous-chaîne avant la dernière survenance de CheckString est retournée.
|
substring-pos(StringToCheck as xs:string, StringToFind as xs:string) asxs:integer XP3.1 XQ3.1 Retourne la position de caractère de la première occurrence de StringToFind dans la chaîne StringToCheck. La position du caractère est retournée en tant qu'un entier. Le premier caractère de StringToCheck a la position 1. Si StringToFind ne se produit pas dans le cadre de StringToCheck, l'entier 0 est retourné. Pour contrôler la deuxième occurrence ou une occurrence ultérieure de StringToCheck, utiliser la signature suivante de cette fonction.
substring-pos(StringToCheck as xs:string, StringToFind as xs:string, Integer as xs:integer) asxs:integer XP3.1 XQ3.1 Retourne la position de caractère de StringToFind dans la chaîne, StringToCheck. La recherche de StringToFind commence à partir de la position de caractère indiquée par l'argument Integer ; la sous-chaîne du caractère avant cette position n'est pas recherchée. Néanmoins, l'entier retourné, est la position de la chaîne trouvée dans le cadre de la chaîne entière, StringToCheck. Cette signature est utile pour trouver la deuxième position ou une position ultérieure d'une chaîne qui se produit plusieurs fois avec StringToCheck. Si StringToFind ne se produit pas dans le cadre de StringToCheck, l'entier 0 est retourné.
|
trim-string(InputString as xs:string) asxs:string XP3.1 XQ3.1 Cette fonction prend un argument xs:string, supprime tout espace blanc de tête et de fin et retourne une xs:string « nettoyée ».
|
trim-string-left(InputString as xs:string) asxs:string XP3.1 XQ3.1 Cette fonction prend un argument xs:string, supprime tout espace blanc de tête, et retourne une xs:string nettoyée à gauche.
|
trim-string-right(InputString as xs:string) asxs:string XP3.1 XQ3.1 Cette fonction prend un argument xs:string, supprime tout espace blanc de fin de ligne, et retourne une xs:string nettoyée à droite.
|