La documentation ci-dessous est générée à partir de la table système
system.functions.format
pattern avec les valeurs (chaînes, entiers, etc.) listées dans les arguments, de manière similaire au formatage en Python.
La chaîne de motif peut contenir des champs de remplacement entourés d’accolades {}.
Tout ce qui n’est pas entre accolades est considéré comme du texte littéral et copié tel quel dans la sortie.
Le caractère d’accolade littéral peut être échappé avec deux accolades : {{ et }}.
Les noms de champ peuvent être des nombres (à partir de zéro) ou être vides (dans ce cas, des nombres croissants leur sont attribués implicitement).
Syntaxe
pattern— La chaîne de format contenant des marqueurs de substitution.Strings0[, s1, ...]— Une ou plusieurs valeurs à insérer dans la chaîne de format.Any
String
Exemples
Marqueurs de substitution numérotés
Query
Response
Query
Response
overlay
input par une autre chaîne replace, à partir de l’indice offset (indexé à partir de 1).
Syntaxe
s— La chaîne d’entrée.Stringreplace— La chaîne de remplacementconst Stringoffset— Un entier de typeInt(indexé à partir de 1). Sioffsetest négatif, il est compté à partir de la fin de la chaînes.Intlength— Facultatif. Un entier de typeInt.lengthindique la longueur de la portion de la chaîne d’entréesà remplacer. Silengthn’est pas spécifié, le nombre d’octets supprimés desest égal à la longueur dereplace; sinon,lengthoctets sont supprimés.Int
String
Exemples
Remplacement de base
Query
Response
Query
Response
overlayUTF8
s par une autre chaîne replace, à partir de l’index offset indexé à partir de 1.
Suppose que la chaîne contient du texte valide encodé en UTF-8.
Si cette hypothèse n’est pas respectée, aucune exception n’est levée et le résultat est indéfini.
Syntaxe
s— La chaîne d’entrée.Stringreplace— La chaîne de remplacement.const Stringoffset— Un entier de typeInt(indexé à partir de 1). Sioffsetest négatif, il est compté à partir de la fin de la chaîne d’entrées.(U)Int*length— Facultatif. Indique la longueur de l’extrait de la chaîne d’entréesà remplacer. Silengthn’est pas spécifié, le nombre de caractères supprimés desest égal à la longueur dereplace; sinon,lengthcaractères sont supprimés.(U)Int*
String
Exemples
Remplacement UTF-8
Query
Response
printf
printf met en forme la chaîne donnée à l’aide des valeurs (chaînes, entiers, nombres à virgule flottante, etc.) listées dans les arguments, à l’instar de la fonction printf en C++.
La chaîne de format peut contenir des spécificateurs de format commençant par le caractère %.
Tout ce qui n’est pas inclus dans % et le spécificateur de format qui le suit est considéré comme du texte littéral et recopié tel quel dans la sortie.
Le caractère % littéral peut être échappé avec %%.
La chaîne de format peut être soit une constante, soit une expression de colonne, ce qui permet d’utiliser des formats différents pour chaque ligne.
Syntaxe
format— La chaîne de format contenant des spécificateurs%.Stringsub1, sub2, ...— Facultatif. Zéro, une ou plusieurs valeurs à substituer dans la chaîne de format.Any
String
Exemples
Formatage de style C++
Query
Response
regexpQuoteMeta
\0, \\, |, (, ), ^, $, ., [, ], ?, *, +, {, :, -.
Cette implémentation diffère légèrement de re2::RE2::QuoteMeta.
Elle échappe l’octet nul sous la forme \0 au lieu de \x00 et n’échappe que les caractères nécessaires.
Syntaxe
s— La chaîne d’entrée contenant les caractères à échapper dans une expression régulière.String
String
Exemples
Échapper les caractères spéciaux d’une expression régulière
Query
Response
replaceAll
pattern dans la chaîne haystack par la chaîne replacement.
Syntaxe
replace
Arguments
haystack— La chaîne d’entrée dans laquelle effectuer la recherche.Stringpattern— La sous-chaîne à rechercher et à remplacer.const Stringreplacement— La chaîne de remplacement.const String
String
Exemples
Remplacer toutes les occurrences
Query
Response
replaceOne
pattern dans haystack par la chaîne de remplacement replacement.
Syntaxe
haystack— La chaîne d’entrée dans laquelle effectuer la recherche.Stringpattern— La sous-chaîne à rechercher et à remplacer.const Stringreplacement— La chaîne de remplacement.const String
String
Exemples
Remplacer la première occurrence
Query
Response
replaceRegexpAll
replaceRegexpOne, mais remplace toutes les occurrences du motif.
Exception : si une expression régulière correspond à une sous-chaîne vide, le remplacement n’est pas effectué plus d’une fois.
Syntaxe
REGEXP_REPLACE
Arguments
haystack— La chaîne d’entrée dans laquelle effectuer la recherche.Stringpattern— Le motif d’expression régulière à rechercher.const Stringreplacement— La chaîne par laquelle remplacer le motif ; elle peut contenir des substitutions.const String
String
Exemples
Remplace tous les caractères par une version doublée
Query
Response
Query
Response
replaceRegexpOne
pattern (en syntaxe re2) dans haystack par la chaîne replacement.
replacement peut contenir des substitutions \0-\9.
Les substitutions \1-\9 correspondent aux 1er à 9e groupes de capture (sous-correspondances), tandis que la substitution \0 correspond à l’ensemble de la correspondance.
Pour utiliser un caractère \ littéral dans les chaînes pattern ou replacement, échappez-le avec \.
Gardez également à l’esprit que les littéraux de chaîne nécessitent un échappement supplémentaire.
Syntaxe
haystack— La chaîne d’entrée dans laquelle effectuer la recherche.Stringpattern— Le motif d’expression régulière à rechercher.const Stringreplacement— La chaîne de remplacement du motif ; elle peut contenir des substitutions.const String
String
Exemples
Conversion de dates ISO au format américain
Query
Response
Query
Response
translate
s à l’aide d’une correspondance caractère par caractère définie par les chaînes from et to.
from et to doivent être des chaînes ASCII constantes.
Si from et to ont la même longueur, chaque occurrence du premier caractère de from dans s est remplacée par le premier caractère de to, la deuxième occurrence du caractère de from dans s est remplacée par le deuxième caractère de to, et ainsi de suite.
Si from contient plus de caractères que to, toutes les occurrences des caractères situés à la fin de from et n’ayant pas de caractère correspondant dans to sont supprimées de s.
Les caractères non ASCII de s ne sont pas modifiés par la fonction.
Syntaxe
s— La chaîne d’entrée à traduire.Stringfrom— Une chaîne ASCII constante contenant les caractères à remplacer.const Stringto— Une chaîne ASCII constante contenant les caractères de remplacement.const String
String
Exemples
Correspondance des caractères
Query
Response
Query
Response
translateUTF8
translate, mais en supposant que s, from et to sont des chaînes encodées en UTF-8.
Syntaxe
s— Chaîne d’entrée UTF-8 à convertir.Stringfrom— Chaîne UTF-8 constante contenant les caractères à remplacer.const Stringto— Chaîne UTF-8 constante contenant les caractères de remplacement.const String
String. String
Exemples
Conversion de caractères UTF-8
Query
Response