Fonctions XPath/XQuery : Chaîne

www.altova.com Agrandir/Réduire tout Imprimer cette rubrique Page précédente Un niveau supérieur Page suivante

Accueil >  Annexes > Fonctions XSLT et XPath/XQuery > Fonctions d'extension Altova >

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.  Les fonctions dans cette section peuvent être utilisées avec les moteurs XPath 3.0 et XQuery 3.0 d'Altova. Ils sont disponibles dans des contextes XPath/XQuery.

 

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. Les fonctions d'extension Altova se trouvent dans l'espace de nom des fonctions d'extension Altova, http://www.altova.com/xslt-extensions, et sont indiquées dans cette section par le préfixe altova:, qui est présupposé être lié à cet espace de nom. Veuillez noter que, en ce qui concerne les versions futures de votre produit, la prise en charge d'une fonction peut être interrompue et le comportement de certaines fonctions peut changer. Veuillez consulter la documentation lors des publications à venir pour plus d'informations concernant la prise en charge des fonctions d'extension Altova de cette version.

 

Fonctions XPath (utilisées dans les expressions XPath dans XSLT) :

XP1 XP2 XP3.1

Fonctions XSLT (utilisées dans les expressions XPath dans XSLT) :

Xslt1 XSLT2 XSLT3

Fonctions XQuery (utilisées dans les expressions XQuery dans XQuery) :

XQ1 XQ3.1

 

 

Click to expand/collapsecamel-case [altova:]

altova:camel-case(InputString as xs:string) as xs: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.

altova:camel-case("max") retourne Max
altova:camel-case("max max") retourne Max Max
altova:camel-case("file01.xml") retourne File01.xml
altova:camel-case("file01.xml file02.xml") retourne File01.xml File02.xml
altova:camel-case("file01.xml   file02.xml") retourne File01.xml   File02.xml
altova:camel-case("file01.xml -file02.xml") retourne File01.xml -file02.xml

 

altova:camel-case(InputString as xs:stringSplitChars as xs:stringIsRegex as xs:boolean) as xs: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.

altova:camel-case("setname getname", "set|get", true()) retourne setName getName
altova:camel-case("altova\documents\testcases", "\", false()) retourne Altova\Documents\Testcases

 

 

Click to expand/collapsechar [altova:]

altova:char(Position as xs:integer) as xs: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.

Si l'item contextuel est 1234ABCD:

altova:char(2) retourne 2
altova:char(5) retourne A
altova:char(9) retourne la chaîne vide.
altova:char(-2) retourne la chaîne vide.

 

altova:char(InputString as xs:stringPosition as xs:integer) as xs: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.

altova:char("2014-01-15", 5) retourne -
altova:char("USA", 1) retourne U
altova:char("USA", 10) retourne la chaîne vide.
altova:char("USA", -2) retourne la chaîne vide.

 

 

Click to expand/collapsecreate-hash-from-string[altova:]

altova:create-hash-from-string(InputString as xs:string) as xs:string     XP2 XQ1 XP3.1 XQ3.1

altova:create-hash-from-string(InputString as xs:string, HashAlgo as xs:string) as xs: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-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é.

altova:create-hash-from-string('abc') retourne un string de hashage généré en  utilisant l'algorithme de hachage SHA-256.
altova:create-hash-from-string('abc', 'md5') retourne un string de hashage généré en  utilisant l'algorithme de hachage MD5.
altova:create-hash-from-string('abc', 'MD5') retourne un string de hashage généré en  utilisant l'algorithme de hachage MD5.

 

 

Click to expand/collapsefirst-chars [altova:]

altova:first-chars(X-Number as xs:integer) as xs: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.

Si l'item de contexte est 1234ABCD :

altova:first-chars(2) retourne 12
altova:first-chars(5) retourne 1234A
altova:first-chars(9) retourne 1234ABCD

 

altova:first-chars(InputString as xs:stringX-Number as xs:integer) as xs: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.

altova:first-chars("2014-01-15", 5) retourne 2014-
altova:first-chars("USA", 1) retourne U

 

 

Click to expand/collapseformat-string [altova:]

altova:format-string(InputString as xs:stringFormatSequence as item()*) as xs: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.

altova:format-string('Hello %1, %2, %3', ('Jane','John','Joe')) retourne "Hello Jane, John, Joe"
altova:format-string('Hello %1, %2, %3', ('Jane','John','Joe''Tom')) retourne "Hello Jane, John, Joe"
altova:format-string('Hello %1, %2, %4', ('Jane','John','Joe''Tom')) retourne "Hello Jane, John, Tom"
altova:format-string('Hello %1, %2, %4', ('Jane','John','Joe')) retourne "Hello Jane, John, %4"

 

 

Click to expand/collapselast-chars [altova:]

altova:last-chars(X-Number as xs:integer) as xs: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.

Si l'item contextuel est 1234ABCD :

altova:last-chars(2) retourne CD
altova:last-chars(5) retourne 4ABCD
altova:last-chars(9) retourne 1234ABCD

 

altova:last-chars(InputString as xs:stringX-Number as xs:integer) as xs: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.

altova:last-chars("2014-01-15", 5) retourne 01-15
altova:last-chars("USA", 10) retourne USA

 

 

Click to expand/collapsepad-string-left [altova:]

altova:pad-string-left(StringToPad as xs:string, StringLength as xs:integer, PadCharacter as xs:string) as xs: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é.

altova:pad-string-left('AP', 1, 'Z') retourne 'AP'
altova:pad-string-left('AP', 2, 'Z') retourne 'AP'
altova:pad-string-left('AP', 3, 'Z') retourne 'ZAP'
altova:pad-string-left('AP', 4, 'Z') retourne 'ZZAP'
altova:pad-string-left('AP', -3, 'Z') retourne 'AP'
altova:pad-string-left('AP', 3, 'YZ') retourne une erreur pad-character-too-long

 

 

Click to expand/collapsepad-string-right [altova:]

altova:pad-string-right(StringToPad as xs:string, StringLength as xs:integer, PadCharacter as xs:string) as xs: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é.

altova:pad-string-right('AP', 1, 'Z') retourne 'AP'
altova:pad-string-right('AP', 2, 'Z') retourne 'AP'
altova:pad-string-right('AP', 3, 'Z') retourne 'APZ'
altova:pad-string-right('AP', 4, 'Z') retourne 'APZZ'
altova:pad-string-right('AP', -3, 'Z') retourne 'AP'
altova:pad-string-right('AP', 3, 'YZ') retourne une erreur pad-character-too-long

 

 

Click to expand/collapserepeat-string [altova:]

altova:repeat-string(InputString as xs:string, Repeats as xs:integer) as xs: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.

altova:repeat-string("Altova #", 3) retourne "Altova #Altova #Altova #"

 

 

Click to expand/collapsesubstring-after-last [altova:]

altova:substring-after-last(MainString as xs:string, CheckString as xs:string) as xs: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.

altova:substring-after-last('ABCDEFGH', 'B') retourne 'CDEFGH'
altova:substring-after-last('ABCDEFGH', 'BC') retourne 'DEFGH'
altova:substring-after-last('ABCDEFGH', 'BD') retourne ''
altova:substring-after-last('ABCDEFGH', 'Z') retourne ''
altova:substring-after-last('ABCDEFGH', '') retourne 'ABCDEFGH'
altova:substring-after-last('ABCD-ABCD', 'B') retourne 'CD'
altova:substring-after-last('ABCD-ABCD-ABCD', 'BCD') retourne ''

 

 

Click to expand/collapsesubstring-before-last [altova:]

altova:substring-before-last(MainString as xs:string, CheckString as xs:string) as xs: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.

altova:substring-before-last('ABCDEFGH', 'B') retourne 'A'
altova:substring-before-last('ABCDEFGH', 'BC') retourne 'A'
altova:substring-before-last('ABCDEFGH', 'BD') retourne ''
altova:substring-before-last('ABCDEFGH', 'Z') retourne ''
altova:substring-before-last('ABCDEFGH', '') retourne ''
altova:substring-before-last('ABCD-ABCD', 'B') retourne 'ABCD-A'
altova:substring-before-last('ABCD-ABCD-ABCD', 'ABCD') retourne 'ABCD-ABCD-'

 

 

Click to expand/collapsesubstring-pos [altova:]

altova:substring-pos(StringToCheck as xs:stringStringToFind as xs:string) as xs: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.

altova:substring-pos('Altova', 'to') retourne 3
altova:substring-pos('Altova', 'tov') retourne 3
altova:substring-pos('Altova', 'tv') retourne 0
altova:substring-pos('AltovaAltova', 'to') retourne 3

 

altova:substring-pos(StringToCheck as xs:stringStringToFind as xs:stringInteger as xs:integer) as xs: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é.

altova:substring-pos('Altova', 'to', 1) retourne 3
altova:substring-pos('Altova', 'to', 3) retourne 3
altova:substring-pos('Altova', 'to', 4) retourne 0
altova:substring-pos('Altova-Altova', 'to', 0) retourne 3
altova:substring-pos('Altova-Altova', 'to', 4) retourne 10

 

 

Click to expand/collapsetrim-string [altova:]

altova:trim-string(InputString as xs:string) as xs: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 ».

altova:trim-string("   Hello World   ")) retourne "Hello World"
altova:trim-string("Hello World   ")) retourne "Hello World"
altova:trim-string("   Hello World")) retourne "Hello World"
altova:trim-string("Hello World")) retourne "Hello World"
altova:trim-string("Hello   World")) retourne "Hello   World"

 

 

Click to expand/collapsetrim-string-left [altova:]

altova:trim-string-left(InputString as xs:string) as xs: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.

altova:trim-string-left("   Hello World   ")) retourne "Hello World   "
altova:trim-string-left("Hello World   ")) retourne "Hello World   "
altova:trim-string-left("   Hello World")) retourne "Hello World"
altova:trim-string-left("Hello World")) retourne "Hello World"
altova:trim-string-left("Hello   World")) retourne "Hello   World"

 

 

Click to expand/collapsetrim-string-right [altova:]

altova:trim-string-right(InputString as xs:string) as xs: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.

altova:trim-string-right("   Hello World   ")) retourne "   Hello World"
altova:trim-string-right("Hello World   ")) retourne "Hello World"
altova:trim-string-right("   Hello World")) retourne "   Hello World"
altova:trim-string-right("Hello World")) retourne "Hello World"
altova:trim-string-right("Hello   World")) retourne "Hello   World"

 

 

 


© 2018 Altova GmbH