La documentation ci-dessous est générée à partir de la table système
system.functions.alphaTokens
a-z et A-Z, et renvoie un tableau des sous-chaînes sélectionnées.
Syntaxe
splitByAlpha
Arguments
s— La chaîne à découper.Stringmax_substrings— Facultatif. Lorsquemax_substrings > 0, le nombre de sous-chaînes renvoyées ne dépassera pasmax_substrings; sinon, la fonction renverra autant de sous-chaînes que possible.Int64
s. Array(String)
Exemples
Exemple d’utilisation
Query
Response
arrayStringConcat
array_to_string
Arguments
arr— Le tableau à concaténer.Array(T)separator— Facultatif. Chaîne de séparation. Par défaut, une chaîne vide.const String
String
Exemples
Exemple d’utilisation
Query
Response
extractAllGroupsVertical
extractAllGroups
Arguments
s— Chaîne d’entrée depuis laquelle extraire.StringouFixedStringregexp— Expression régulière à faire correspondre.const Stringouconst FixedString
Array(Array(String))
Exemples
Exemple d’utilisation
Query
Response
ngrams
N.
Syntaxe
s— Chaîne d’entrée.StringouFixedStringN— Longueur du n-gramme.const UInt8/16/32/64
Array(String)
Exemples
Exemple d’utilisation
Query
Response
reverseBySeparator
- reverseBySeparator(‘www.google.com’) renvoie ‘com.google.www’
- reverseBySeparator(‘a/b/c’, ’/’) renvoie ‘c/b/a’
- reverseBySeparator(‘x::y::z’, ’::’) renvoie ‘z::y::x’
string— La chaîne d’entrée dont il faut inverser l’ordre des segments.Stringseparator— La chaîne utilisée comme séparateur pour identifier les segments. S’il n’est pas fourni, ’.’ (point) est utilisé. Par défaut : ’.’String
String
Exemples
Inversion de domaine simple
Query
Response
Query
Response
Query
Response
Query
Response
Query
Response
Query
Response
splitByChar
separator composée d’exactement un caractère, en un tableau de sous-chaînes.
Des sous-chaînes vides peuvent être renvoyées si le séparateur apparaît au début ou à la fin de la chaîne, ou s’il y a plusieurs séparateurs consécutifs.
Le paramètre
splitby_max_substrings_includes_remaining_string (par défaut : 0) détermine si la chaîne restante est incluse dans le dernier élément du tableau résultant lorsque l’argument max_substrings > 0.- Un séparateur apparaît au début ou à la fin de la chaîne
- Il y a plusieurs séparateurs consécutifs
- La chaîne d’origine
sest vide
separator— Le séparateur doit être un caractère sur un seul octet.Strings— La chaîne à découper.Stringmax_substrings— Facultatif. Simax_substrings > 0, le tableau renvoyé contiendra au plusmax_substringssous-chaînes ; sinon, la fonction renverra autant de sous-chaînes que possible. La valeur par défaut est0.Int64
Array(String)
Exemples
Exemple d’utilisation
Query
Response
splitByNonAlpha
Le paramètre
splitby_max_substrings_includes_remaining_string (par défaut : 0) détermine si le reste de la chaîne est inclus dans le dernier élément du tableau de résultats lorsque l’argument max_substrings > 0.s— La chaîne à découper.Stringmax_substrings— Facultatif. Lorsquemax_substrings > 0, le nombre de sous-chaînes renvoyées ne dépassera pasmax_substrings; sinon, la fonction renverra autant de sous-chaînes que possible. Valeur par défaut :0.Int64
s. Array(String)
Exemples
Exemple d’utilisation
Query
Response
splitByRegexp
- une correspondance non vide avec l’expression régulière se produit au début ou à la fin de la chaîne
- plusieurs correspondances non vides avec l’expression régulière se suivent
- la chaîne d’origine est vide alors que l’expression régulière ne l’est pas.
Le paramètre
splitby_max_substrings_includes_remaining_string (par défaut : 0) détermine si la chaîne restante est incluse dans le dernier élément du tableau de résultats lorsque l’argument max_substrings > 0.regexp— Expression régulière. Constante.StringouFixedStrings— La chaîne à découper.Stringmax_substrings— Facultatif. Lorsquemax_substrings > 0, le nombre de sous-chaînes renvoyées ne dépassera pasmax_substrings; sinon, la fonction renverra autant de sous-chaînes que possible. Valeur par défaut :0.Int64
s. Array(String)
Exemples
Exemple d’utilisation
Query
Response
Query
Response
splitByString
separator constant composé de plusieurs caractères en un tableau de sous-chaînes.
Si la chaîne separator est vide, la chaîne s est divisée en un tableau de caractères individuels.
Des sous-chaînes vides peuvent être produites lorsque :
- Un séparateur non vide apparaît au début ou à la fin de la chaîne
- Plusieurs séparateurs non vides se suivent
- La chaîne d’origine
sest vide alors que le séparateur ne l’est pas
Le paramètre
splitby_max_substrings_includes_remaining_string (par défaut : 0) détermine si la chaîne restante est incluse dans le dernier élément du tableau de résultats lorsque l’argument max_substrings > 0.separator— Le séparateur.Strings— La chaîne à scinder.Stringmax_substrings— Facultatif. Lorsquemax_substrings > 0, le nombre de sous-chaînes renvoyées ne dépassera pasmax_substrings; sinon, la fonction renverra autant de sous-chaînes que possible. Valeur par défaut :0.Int64
s Array(String)
Exemples
Exemple d’utilisation
Query
Response
Query
Response
splitByWhitespace
Le paramètre
splitby_max_substrings_includes_remaining_string (par défaut : 0) détermine si le reste de la chaîne est inclus dans le dernier élément du tableau résultant lorsque l’argument max_substrings > 0.s— La chaîne à découper.Stringmax_substrings— Facultatif. Lorsquemax_substrings > 0, le nombre de sous-chaînes renvoyées ne dépasse pasmax_substrings; sinon, la fonction renvoie autant de sous-chaînes que possible. Valeur par défaut :0.Int64
s. Array(String)
Exemples
Exemple d’utilisation
Query
Response
tokens
splitByNonAlphadécoupe les chaînes sur les caractères ASCII non alphanumériques (voir aussi la fonction splitByNonAlpha).splitByString(S)découpe les chaînes selon certaines chaînes séparatricesSdéfinies par l’utilisateur (voir aussi la fonction splitByString). Les séparateurs peuvent être spécifiés à l’aide d’un paramètre facultatif, par exempletokens(value, 'splitByString', [', ', '; ', '\n', '\\']). Notez que chaque chaîne peut être composée de plusieurs caractères (', 'dans l’exemple). La liste de séparateurs par défaut, si elle n’est pas explicitement spécifiée, est un seul espace[' '].asciiCJKdécoupe les chaînes en tokens en appliquant les règles Unicode de délimitation des mots (similaires à UAX #29). Les caractères ASCII alphanumériques et les traits de soulignement forment des tokens avec des connecteurs (:pour les lettres,.et'pour les caractères de même type). Les caractères Unicode non ASCII deviennent des tokens d’un seul caractère.ngrams(N)découpe les chaînes enN-grammes de taille identique (voir aussi la fonction ngrams). La longueur des ngrams peut être spécifiée à l’aide d’un paramètre entier facultatif compris entre 1 et 8, par exempletokens(value, 'ngrams', 3). La taille de ngram par défaut, si elle n’est pas explicitement spécifiée, est 3.sparseGrams(min_length, max_length, min_cutoff_length)découpe les chaînes en n-grammes de longueur variable comportant au minimummin_lengthcaractères et au maximummax_lengthcaractères (bornes incluses) (voir aussi la fonction sparseGrams). Sauf indication explicite,min_lengthetmax_lengthvalent respectivement 3 et 100. Si le paramètremin_cutoff_lengthest fourni, seuls les n-grammes dont la longueur est supérieure ou égale àmin_cutoff_lengthsont renvoyés. Par rapport àngrams(N), le tokenizersparseGramsproduit des N-grammes de longueur variable, ce qui permet une représentation plus souple du texte d’origine. Par exemple,tokens(value, 'sparseGrams', 3, 5, 4)génère en interne des 3-, 4- et 5-grammes à partir de la chaîne d’entrée, mais seuls les 4- et 5-grammes sont renvoyés.arrayn’effectue aucune tokenisation, c’est-à-dire que chaque valeur de ligne constitue un token (voir aussi la fonction array).
splitByString, si les tokens ne forment pas un code préfixe, vous souhaiterez probablement que la correspondance privilégie d’abord les séparateurs les plus longs.
Pour ce faire, transmettez les séparateurs par ordre décroissant de longueur.
Par exemple, avec separators = ['%21', '%'], la chaîne %21abc serait découpée en ['abc'], tandis que separators = ['%', '%21'] donnerait ['21ac'] (ce qui n’est probablement pas ce que vous vouliez).
Syntaxe
value— La chaîne d’entrée.StringouFixedStringtokenizer— Le tokenizer à utiliser. Les valeurs acceptées sontsplitByNonAlpha,splitByString,asciiCJK,ngrams,sparseGramsetarray. Facultatif ; s’il n’est pas défini explicitement, la valeur par défaut estsplitByNonAlpha.const Stringn— Pertinent uniquement si l’argumenttokenizerestngrams: paramètre facultatif qui définit la longueur des ngrammes. S’il n’est pas défini explicitement, la valeur par défaut est3.const UInt8separators— Pertinent uniquement si l’argumenttokenizerestsplit: paramètre facultatif qui définit les chaînes de séparation. S’il n’est pas défini explicitement, la valeur par défaut est[' '].const Array(String)min_length— Pertinent uniquement si l’argumenttokenizerestsparseGrams: paramètre facultatif qui définit la longueur minimale des grammes, par défaut3.const UInt8max_length— Pertinent uniquement si l’argumenttokenizerestsparseGrams: paramètre facultatif qui définit la longueur maximale des grammes, par défaut100.const UInt8min_cutoff_length— Pertinent uniquement si l’argumenttokenizerestsparseGrams: paramètre facultatif qui définit la longueur minimale de coupure.const UInt8
Array
Exemples
Tokenizer par défaut
Query
Response
Query
Response
tokensForLikePattern
tokens, cette fonction tient compte de la sémantique des motifs LIKE
(comme les caractères génériques en début et en fin) et applique des règles
propres au tokenizer pour extraire des tokens pertinents pour la correspondance de motifs.
Elle prend en charge les mêmes jeux d’arguments que la fonction tokens ; les
arguments supplémentaires après tokenizer sont interprétés en fonction du
tokenizer sélectionné (par exemple, n pour ngrams, separators pour splitByString,
et min_length / max_length [/ min_cutoff_length] pour sparseGrams).
Cette fonction est principalement destinée au débogage et aux tests,
et est utilisée en interne pour analyser le comportement de la tokenisation des motifs LIKE.
Syntaxe
value— La chaîne d’entrée.StringouFixedStringtokenizer— Le tokenizer à utiliser. Les arguments valides sontsplitByNonAlpha,splitByString,asciiCJK,ngrams,sparseGramsetarray. Facultatif ; s’il n’est pas défini explicitement, sa valeur par défaut estsplitByNonAlpha.const Stringn— Pertinent uniquement si l’argumenttokenizerestngrams: paramètre facultatif qui définit la longueur des ngrams. S’il n’est pas défini explicitement, sa valeur par défaut est3.const UInt8separators— Pertinent uniquement si l’argumenttokenizerestsplit: paramètre facultatif qui définit les chaînes de séparation. S’il n’est pas défini explicitement, sa valeur par défaut est[' '].const Array(String)min_length— Pertinent uniquement si l’argumenttokenizerestsparseGrams: paramètre facultatif qui définit la longueur minimale des grammes, par défaut3.const UInt8max_length— Pertinent uniquement si l’argumenttokenizerestsparseGrams: paramètre facultatif qui définit la longueur maximale des grammes, par défaut100.const UInt8min_cutoff_length— Pertinent uniquement si l’argumenttokenizerestsparseGrams: paramètre facultatif qui définit la longueur minimale de coupure.const UInt8
Array
Exemples
Tokenizer par défaut
Query
Response