A documentação abaixo é gerada a partir da system table
system.functions.format
pattern com os valores (strings, inteiros etc.) listados nos argumentos, de modo semelhante à formatação em Python.
A string pattern pode conter campos de substituição entre chaves {}.
Tudo o que não estiver entre chaves é considerado texto literal e copiado literalmente para a saída.
Os caracteres de chave literais podem ser escapados com duas chaves: {{ e }}.
Os nomes dos campos podem ser números (começando em zero) ou estar vazios (nesse caso, recebem implicitamente números crescentes).
Sintaxe
pattern— A string de formato que contém placeholders.Strings0[, s1, ...]— Um ou mais valores para substituir os placeholders no padrão.Any
String
Exemplos
Placeholders numerados
Query
Response
Query
Response
overlay
input por outra string replace, começando no índice offset, baseado em 1.
Sintaxe
s— A string de entrada.Stringreplace— A string de substituição.const Stringoffset— Um inteiro do tipoInt(indexado a partir de 1). Seoffsetfor negativo, ele será contado a partir do final da strings.Intlength— Opcional. Um inteiro do tipoInt.lengthespecifica o comprimento do trecho dentro da string de entradasque será substituído. Selengthnão for especificado, o número de bytes removidos desserá igual ao comprimento dereplace; caso contrário,lengthbytes serão removidos.Int
String
Exemplos
Substituição básica
Query
Response
Query
Response
overlayUTF8
s por outra string, replace, começando no índice offset, baseado em 1.
Pressupõe que a string contenha texto válido codificado em UTF-8.
Se essa suposição for violada, nenhuma exceção é lançada e o resultado é indefinido.
Sintaxe
s— A string de entrada.Stringreplace— A string de substituição.const Stringoffset— Um inteiroInt(baseado em 1). Seoffsetfor negativo, ele é contado a partir do fim da string de entradas.(U)Int*length— Opcional. Especifica o comprimento do trecho na string de entradasque será substituído. Selengthnão for especificado, o número de caracteres removidos desserá igual ao comprimento dereplace; caso contrário, serão removidoslengthcaracteres.(U)Int*
String
Exemplos
Substituição UTF-8
Query
Response
printf
printf formata a string fornecida com os valores (strings, inteiros, números de ponto flutuante etc.) listados nos argumentos, de maneira semelhante à função printf em C++.
A string de formato pode conter especificadores de formato iniciados pelo caractere %.
Tudo o que não estiver contido em % e no especificador de formato seguinte é considerado texto literal e copiado literalmente para a saída.
O caractere % literal pode ser escapado com %%.
A string de formato pode ser uma constante ou uma expressão de coluna, permitindo diferentes padrões de formato por linha.
Sintaxe
format— A string de formato com especificadores%.Stringsub1, sub2, ...— Opcional. Zero ou mais valores a serem substituídos na string de formato.Any
String
Exemplos
Formatação no estilo C++
Query
Response
regexpQuoteMeta
\0, \\, |, (, ), ^, $, ., [, ], ?, *, +, {, :, -.
Esta implementação difere ligeiramente de re2::RE2::QuoteMeta.
Ela escapa o byte zero como \0 em vez de \x00 e escapa apenas os caracteres necessários.
Sintaxe
s— A string de entrada que contém caracteres que devem ser escapados em regex.String
String
Exemplos
Escapar caracteres especiais de regex
Query
Response
replaceAll
pattern em haystack pela string replacement.
Sintaxe
replace
Argumentos
haystack— A string de entrada na qual buscar.Stringpattern— A substring a ser encontrada e substituída.const Stringreplacement— A string que substituirá o padrão.const String
String
Exemplos
Substituir todas as ocorrências
Query
Response
replaceOne
pattern em haystack pela string replacement.
Sintaxe
haystack— A string de entrada na qual a busca será feita.Stringpattern— A substring a ser encontrada e substituída.const Stringreplacement— A string usada para substituir a substring.const String
String
Exemplos
Substituir a primeira ocorrência
Query
Response
replaceRegexpAll
replaceRegexpOne, mas substitui todas as ocorrências do padrão.
Como exceção, se uma expressão regular corresponder a uma substring vazia, a substituição não será feita mais de uma vez.
Sintaxe
REGEXP_REPLACE
Argumentos
haystack— A string de entrada na qual a busca será feita.Stringpattern— O padrão de expressão regular a ser encontrado.const Stringreplacement— A string que substituirá o padrão; pode conter substituições.const String
String
Exemplos
Substituir todos os caracteres pela versão duplicada
Query
Response
Query
Response
replaceRegexpOne
pattern (na sintaxe do re2) em haystack pela string replacement.
replacement pode conter substituições \0-\9.
As substituições \1-\9 correspondem aos grupos de captura de 1 a 9 (submatches), e a substituição \0 corresponde à correspondência inteira.
Para usar o caractere literal \ nas strings pattern ou replacement, escape-o com \.
Lembre-se também de que literais de string exigem escape adicional.
Sintaxe
haystack— A string de entrada na qual será feita a pesquisa.Stringpattern— O padrão de expressão regular a ser encontrado.const Stringreplacement— A string que substituirá o padrão; pode conter substituições.const String
String
Exemplos
Convertendo datas ISO para o formato americano
Query
Response
Query
Response
translate
s usando um mapeamento de caracteres um para um definido pelas strings from e to.
from e to devem ser strings ASCII constantes.
Se from e to tiverem o mesmo tamanho, cada ocorrência do primeiro caractere de from em s será substituída pelo primeiro caractere de to, a segunda ocorrência de from em s será substituída pelo segundo caractere de to e assim por diante.
Se from contiver mais caracteres do que to, todas as ocorrências dos caracteres no final de from que não tiverem caractere correspondente em to serão removidas de s.
Caracteres não ASCII em s não são modificados pela função.
Sintaxe
s— A string de entrada a ser convertida.Stringfrom— Uma string ASCII constante que contém os caracteres a serem substituídos.const Stringto— Uma string ASCII constante que contém os caracteres de substituição.const String
String
Exemplos
Mapeamento de caracteres
Query
Response
Query
Response
translateUTF8
translate, mas pressupõe que s, from e to sejam strings codificadas em UTF-8.
Sintaxe
s— string UTF-8 de entrada a ser convertida.Stringfrom— uma string UTF-8 constante que contém os caracteres a serem substituídos.const Stringto— uma string UTF-8 constante que contém os caracteres de substituição.const String
String. String
Exemplos
Conversão de caracteres UTF-8
Query
Response