A documentação abaixo é gerada a partir da system table
system.functions.alphaTokens
a-z e A-Z e retorna um array com as substrings selecionadas.
Sintaxe
splitByAlpha
Argumentos
s— A string a ser dividida.Stringmax_substrings— Opcional. Quandomax_substrings > 0, o número de substrings retornadas não será maior quemax_substrings; caso contrário, a função retornará o máximo de substrings possível.Int64
s. Array(String)
Exemplos
Exemplo de uso
Query
Response
arrayStringConcat
array_to_string
Argumentos
arr— O array a ser concatenado.Array(T)separator— Opcional. String usada como separador. Por padrão, é uma string vazia.const String
String
Exemplos
Exemplo de uso
Query
Response
extractAllGroupsVertical
extractAllGroups
Argumentos
s— String de entrada da qual extrair.StringouFixedStringregexp— Expressão regular usada para correspondência.const Stringouconst FixedString
Array(Array(String))
Exemplos
Exemplo de uso
Query
Response
ngrams
N.
Sintaxe
s— String de entrada.StringouFixedStringN— O comprimento do n-grama.const UInt8/16/32/64
Array(String)
Exemplos
Exemplo de uso
Query
Response
reverseBySeparator
- reverseBySeparator(‘www.google.com’) retorna ‘com.google.www’
- reverseBySeparator(‘a/b/c’, ’/’) retorna ‘c/b/a’
- reverseBySeparator(‘x::y::z’, ’::’) retorna ‘z::y::x’
string— A string de entrada para inverter a ordem de suas partes.Stringseparator— A string separadora usada para identificar as partes. Se não for fornecida, usa ’.’ (ponto). Padrão: ’.’String
String
Exemplos
Reversão básica de domínio
Query
Response
Query
Response
Query
Response
Query
Response
Query
Response
Query
Response
splitByChar
separator, que deve ter exatamente um caractere.
Substrings vazias podem ser retornadas se o separador ocorrer no início ou no fim da string, ou se houver vários separadores consecutivos.
A configuração
splitby_max_substrings_includes_remaining_string (padrão: 0) controla se a parte restante da string é incluída no último elemento do array resultante quando o argumento max_substrings > 0.- Um separador ocorre no início ou no fim da string
- Há vários separadores consecutivos
- A string original
sestá vazia
separator— O separador deve ser um caractere de um único byte.Strings— A string a ser dividida.Stringmax_substrings— Opcional. Semax_substrings > 0, o array retornado conterá no máximomax_substringssubstrings; caso contrário, a função retornará o máximo possível de substrings. O valor padrão é0.Int64
Array(String)
Exemplos
Exemplo de uso
Query
Response
splitByNonAlpha
A configuração
splitby_max_substrings_includes_remaining_string (padrão: 0) controla se a string restante é incluída no último elemento do array resultante quando o argumento max_substrings > 0.s— A string a ser dividida.Stringmax_substrings— Opcional. Quandomax_substrings > 0, o número de substrings retornadas não será maior quemax_substrings; caso contrário, a função retornará o maior número possível de substrings. Valor padrão:0.Int64
s. Array(String)
Exemplos
Exemplo de uso
Query
Response
splitByRegexp
- uma correspondência não vazia da expressão regular ocorre no início ou no fim da string
- há várias correspondências não vazias consecutivas da expressão regular
- a string original está vazia enquanto a expressão regular não está vazia.
A configuração
splitby_max_substrings_includes_remaining_string (padrão: 0) controla se a string restante é incluída no último elemento do array resultante quando o argumento max_substrings > 0.regexp— Expressão regular. Constante.StringouFixedStrings— A string a ser dividida.Stringmax_substrings— Opcional. Quandomax_substrings > 0, as substrings retornadas não excederãomax_substrings; caso contrário, a função retornará o maior número possível de substrings. Valor padrão:0.Int64
s. Array(String)
Exemplos
Exemplo de uso
Query
Response
Query
Response
splitByString
separator constante composto por vários caracteres em um array de substrings.
Se a string separator estiver vazia, ela dividirá a string s em um array de caracteres individuais.
Substrings vazias podem ser retornadas quando:
- Um separador não vazio aparece no início ou no fim da string
- Há vários separadores não vazios consecutivos
- A string original
sestá vazia enquanto o separador não está vazio
A configuração
splitby_max_substrings_includes_remaining_string (padrão: 0) controla se a string restante é incluída no último elemento do array resultante quando o argumento max_substrings > 0.separator— O separador.Strings— A string a ser dividida.Stringmax_substrings— Opcional. Quandomax_substrings > 0, as substrings retornadas não serão mais numerosas quemax_substrings; caso contrário, a função retornará o maior número possível de substrings. Valor padrão:0.Int64
s Array(String)
Exemplos
Exemplo de uso
Query
Response
Query
Response
splitByWhitespace
A configuração
splitby_max_substrings_includes_remaining_string (padrão: 0) controla se o restante da string é incluído no último elemento do array resultante quando o argumento max_substrings > 0.s— A string a ser dividida.Stringmax_substrings— Opcional. Quandomax_substrings > 0, a quantidade de substrings retornadas não será maior quemax_substrings; caso contrário, a função retornará o maior número possível de substrings. Valor padrão:0.Int64
s. Array(String)
Exemplos
Exemplo de uso
Query
Response
tokens
splitByNonAlphadivide strings em caracteres ASCII não alfanuméricos (veja também a função splitByNonAlpha).splitByString(S)divide strings usando determinadas strings separadorasSdefinidas pelo usuário (veja também a função splitByString). Os separadores podem ser especificados com um parâmetro opcional, por exemplo,tokens(value, 'splitByString', [', ', '; ', '\n', '\\']). Observe que cada string pode ser composta por vários caracteres (', 'no exemplo). A lista padrão de separadores, se não for especificada explicitamente, é um único espaço em branco[' '].asciiCJKdivide strings em tokens usando regras de fronteira de palavras do Unicode (semelhantes ao UAX #29). Caracteres ASCII alfanuméricos e sublinhados formam tokens com conectores (:para letras,.e'para caracteres do mesmo tipo). Caracteres Unicode não ASCII se tornam tokens de um único caractere.ngrams(N)divide strings emN-grams de mesmo tamanho (veja também a função ngrams). O comprimento do ngram pode ser especificado com um parâmetro inteiro opcional entre 1 e 8, por exemplo,tokens(value, 'ngrams', 3). O tamanho padrão do ngram, se não for especificado explicitamente, é 3.sparseGrams(min_length, max_length, min_cutoff_length)divide strings em n-grams de comprimento variável, com no mínimomin_lengthe no máximomax_lengthcaracteres (inclusive) (veja também a função sparseGrams). A menos que sejam especificados explicitamente,min_lengthemax_lengthassumem os valores padrão 3 e 100. Se o parâmetromin_cutoff_lengthfor fornecido, apenas n-grams com comprimento maior ou igual amin_cutoff_lengthserão retornados. Em comparação comngrams(N), o tokenizadorsparseGramsproduz N-grams de comprimento variável, permitindo uma representação mais flexível do texto original. Por exemplo,tokens(value, 'sparseGrams', 3, 5, 4)gera internamente 3-, 4- e 5-grams a partir da string de entrada, mas apenas os 4- e 5-grams são retornados.arraynão realiza tokenização, ou seja, o valor de cada linha é um token (veja também a função array).
splitByString, se os tokens não formarem um código de prefixo, provavelmente você vai querer que a correspondência priorize os separadores mais longos.
Para isso, passe os separadores em ordem decrescente de comprimento.
Por exemplo, com separators = ['%21', '%'], a string %21abc seria tokenizada como ['abc'], enquanto separators = ['%', '%21'] seria tokenizada como ['21ac'] (o que provavelmente não é o que você queria).
Sintaxe
value— A string de entrada.StringouFixedStringtokenizer— O tokenizador a ser usado. Os argumentos válidos sãosplitByNonAlpha,splitByString,asciiCJK,ngrams,sparseGramsearray. Opcional; se não for definido explicitamente, o valor padrão ésplitByNonAlpha.const Stringn— Relevante apenas se o argumentotokenizerforngrams: um parâmetro opcional que define o comprimento dos ngrams. Se não for definido explicitamente, o valor padrão é3.const UInt8separators— Relevante apenas se o argumentotokenizerforsplit: um parâmetro opcional que define as strings de separação. Se não for definido explicitamente, o valor padrão é[' '].const Array(String)min_length— Relevante apenas se o argumentotokenizerforsparseGrams: um parâmetro opcional que define o comprimento mínimo do grama; o valor padrão é 3.const UInt8max_length— Relevante apenas se o argumentotokenizerforsparseGrams: um parâmetro opcional que define o comprimento máximo do grama; o valor padrão é 100.const UInt8min_cutoff_length— Relevante apenas se o argumentotokenizerforsparseGrams: um parâmetro opcional que define o comprimento mínimo de corte.const UInt8
Array
Exemplos
Tokenizador padrão
Query
Response
Query
Response
tokensForLikePattern
tokens, esta função reconhece a semântica dos padrões LIKE
(como caracteres curinga no início e no fim) e aplica regras específicas do tokenizador
para extrair tokens relevantes para correspondência de padrões.
Ela oferece suporte aos mesmos conjuntos de argumentos que a função tokens; os argumentos adicionais
após tokenizer são interpretados de acordo com o tokenizador
selecionado (por exemplo, n para ngrams, separators para splitByString
e min_length / max_length [/ min_cutoff_length] para sparseGrams).
Esta função se destina principalmente a depuração e testes
e é usada internamente para analisar o comportamento da tokenização de padrões LIKE.
Sintaxe
value— A string de entrada.StringouFixedStringtokenizer— O tokenizador a ser usado. Os argumentos válidos sãosplitByNonAlpha,splitByString,asciiCJK,ngrams,sparseGramsearray. Opcional; se não for definido explicitamente, o valor padrão serásplitByNonAlpha.const Stringn— Relevante apenas se o argumentotokenizerforngrams: um parâmetro opcional que define o comprimento dos ngrams. Se não for definido explicitamente, o valor padrão será3.const UInt8separators— Relevante apenas se o argumentotokenizerforsplit: um parâmetro opcional que define as strings separadoras. Se não for definido explicitamente, o valor padrão será[' '].const Array(String)min_length— Relevante apenas se o argumentotokenizerforsparseGrams: um parâmetro opcional que define o comprimento mínimo do gram; o valor padrão é 3.const UInt8max_length— Relevante apenas se o argumentotokenizerforsparseGrams: um parâmetro opcional que define o comprimento máximo do gram; o valor padrão é 100.const UInt8min_cutoff_length— Relevante apenas se o argumentotokenizerforsparseGrams: um parâmetro opcional que define o comprimento mínimo de corte.const UInt8
Array
Exemplos
Tokenizador padrão
Query
Response