Uma função de cadeia de caracteres executa operações em dados de texto. Utilize uma função de cadeia de caracteres para limpar dados, converter dados a um formato diferente, modificar o uso de maiúsculas, calcular métricas sobre os dados ou executar outras manipulações. Use funções de cadeia de caracteres somente com tipos de dados de cadeia de caracteres (qualquer um dos tipos String).
Contains(String, Target, CaseInsensitive=1)
: procura pela ocorrência de uma cadeia específica (Target) dentro de uma cadeia de caracteres (String). Retorna verdadeiro se a cadeia de caracteres (String) contém a sequência-alvo (Target); senão, retorna falso.
Contains('123ABC', 'ABC')
retorna verdadeiro.
Contains('123ABC', 'abc')
retorna verdadeiro.
Contains('123ABC', 'abc', 0)
retorna falso.
CountWords(string)
: retorna a contagem das palavras na cadeia de caracteres especificada. Palavras são definidas por caracteres separados por um espaço.
CountWords("Basic Variables Households")
retorna 3.
CountWords("Basic Variables Age:Female (Pop)Age 1")
retorna 5.
DecomposeUnicodeForMatch(String)
: remove acentos e expande caracteres compostos ao convertê-los para uma cadeia de caracteres estreita. Essa função pega dados do tipo
WString
do Alteryx e os converte para o tipo estreito
String
, com letras minúsculas. Todos os acentos e similares são removidos. Consulte
Tipos de dados
para obter mais informações sobre os tipos de dados do Alteryx.
Importante
Essa função é útil somente para correspondência. O resultado não é considerado uma cadeia normalizada.
A função não foi criada para ser usada com conjuntos de caracteres não ocidentais, como os japoneses. Evite usá-la em cadeias que possam conter caracteres largos (esses caracteres são convertidos para "?").
DecomposeUnicodeForMatch("Prénoms français")
retorna "prenoms francais".
EndsWith(String, Target, CaseInsensitive=1)
: verifica se uma cadeia de caracteres termina com a sequência-alvo especificada. Retorna verdadeiro se a cadeia de caracteres termina com a sequência-alvo; senão, retorna falso. Por padrão, não diferencia maiúsculas de minúsculas.
EndsWith('123ABC', 'ABC')
retorna verdadeiro.
EndsWith('123ABC', 'abc')
retorna verdadeiro.
EndsWith('123ABC', 'abc', 0)
retorna falso.
Importante
A função
FindString
diferencia maiúsculas de minúsculas.
FindString(String,Target)
: procura pela ocorrência de uma sequência-alvo em uma cadeia de caracteres e retorna a posição numérica dessa ocorrência.
Retorna o índice de base 0 da primeira ocorrência da sequência-alvo (Target) na cadeia de caracteres (String). Retorna -1 se não houver ocorrência.
FindString([Name], "John")
returns the 0-indexed position of the first character of the target string if the provided string contains the target and returns -1 when the string does not.
FindString("John Smith", "John")
returns 0. The first character of the target string ("J") is in the 0 position or "John Smith."FindString("Michael John Smith", "John")
returns 8. The first character of the target string ("J") is in the 8 position (0-based index) of "Michael John Smith."FindString("David Smith", "John")
returns -1. The first character of the target string ("J") is not found in string "David Smith."
GetWord(string, n)
: retorna a enésima palavra (base 0) na cadeia de caracteres (índice de base 0 significa que a primeira palavra está na posição 0, a segunda está na posição 1 e assim por diante). Palavras são definidas como um grupo de caracteres separados por um espaço, tabulação, retorno ou caractere de nova linha. Múltiplos delimitadores consecutivos são tratados como um único delimitador.
GetWord("Basic Variables Households", 0)
retorna "Basic".
GetWord("Basic Variables Households", 1)
retorna "Variables".
Left(String, len)
: retorna os primeiros caracteres (número determinado em len) da cadeia (String). Se len for menor que 0 ou maior que o comprimento da cadeia de caracteres, esta permanecerá inalterada.
Left("92688", 3)
retorna o valor 926.
Length(String)
: retorna o comprimento da cadeia de caracteres.
Atenção
Os resultados de comprimento podem ser diferentes entre essa função do Designer e as funções SQL. Isso depende de como qualquer banco de dados específico lida com caracteres largos e quebras de linha. Por exemplo, os caracteres de nova linha não são contados em "Length" no PostgreSQL, enquanto são contados na função Length do Designer, e os resultados no Designer podem ser diferentes dependendo se um driver ANSI ou Unicode for usado.
Length("92688")
retorna o valor 5.
LowerCase(String)
: converte a cadeia de caracteres em letras minúsculas.
LowerCase("M1P 1G6")
retorna "m1p 1g6".
MD5_ASCII(String)
: calcula o hash MD5 da cadeia de caracteres. A cadeia de caracteres deve ter apenas caracteres estreitos. Caracteres largos são convertidos em "?" antes de calcular o hash. Use essa função para o tipo String, ela não é recomendada para o tipo WString. Evite usar essa função em cadeias de caracteres que possam conter caracteres largos.
MD5_UNICODE(String)
: tanto para o motor original quanto para o AMP, calcula o hash MD5 da cadeia de caracteres armazenada como UTF-16.
MD5_UTF8(String)
: calcula o hash MD5 da cadeia de caracteres armazenada como UTF-8.
Md5_Ascii("Lá")
, armazenado como Latin1, são necessários 2 bytes, 4C E1. A função calcula o MD5 dos bytes, fornecendo o resultado "0c0ee86cc87d87125ad8923562be952e".
Md5_Ascii("Lá ☢")
, o caractere ☢, por ser largo, é substituído por "?". É como se você estivesse calculando Md5_Ascii("Lá?"). É armazenado como Latin1 em 3 bytes, 4C E1 3F. A função calcula o MD5 dos bytes, fornecendo o resultado "a5a308ab19acf900efea8fc7b5b77b4d".
Md5_Unicode("Lá")
, armazenado como UTF-16, são necessários 4 bytes, 4C 00 E1 00. A função calcula o MD5 dos bytes, fornecendo o "aa9969dfcca04249842cc457e5b3dd01".
Md5_Unicode("Lá ☢")
, quando armazenado como UTF-16, são necessários 8 bytes, 4C 00 E1 00 3C D8 C8 DF. A função calcula o MD5 dos bytes, fornecendo o resultado: "7c4762d93572dd02a8a405232e966b18".
Md5_Utf8("Lá")
, armazenado como UTF-8, são necessários 3 bytes, 4C C3 A1. A função calcula o MD5 dos bytes, fornecendo o "68f00289dc3be140b1dfd4e031d733f1".
Md5_Utf8("Lá ☢")
, quando armazenado como UTF-8, são necessários 7 bytes, 4C C3 A1 F0 9F 8F 88. A função calcula o MD5 dos bytes, fornecendo o resultado "383fc0355db728a2078ce41a2ab6211b".
PadLeft (String, len, char)
: preenche o lado esquerdo da cadeia de caracteres (String) com o caractere especificado (char) até o comprimento especificado (len). Se o preenchimento definido em char for maior do que um caractere, somente o primeiro caractere será usado.
PadLeft("M", 4, "x")
retorna "xxxM".
PadRight (String, len, char)
: preenche o lado direito da cadeia de caracteres (String) com o caractere especificado (char) até o comprimento especificado (len). Se o preenchimento definido em char for maior do que um caractere, somente o primeiro caractere será usado.
PadRight("M", 4, "x")
retorna "Mxxx".
REGEX_CountMatches(String,pattern,icase)
: retorna quantas vezes a cadeia de caracteres (String) corresponde ao padrão especificado (pattern).
O parâmetro
icase
é opcional. Quando especificado, há diferenciação entre maiúsculas e minúsculas. Por padrão, icase = 1, sem diferenciar maiúsculas de minúsculas. Quando definido como 0, há diferenciação.
REGEX_Match(String,pattern,icase)
: procura, em uma cadeia de caracteres (String), a ocorrência de um padrão de expressão regular (pattern).
Informa se a cadeia de caracteres coincide com o padrão do primeiro ao último caractere.
Para procurar por algo que não está necessariamente no início da cadeia de caracteres, inicie o padrão com ".*".
Para procurar por algo que não vai necessariamente até o final da cadeia de caracteres, termine o padrão com ".*".
O parâmetro
icase
é opcional. Quando especificado, há diferenciação entre maiúsculas e minúsculas. Por padrão, icase = 1, sem diferenciar maiúsculas de minúsculas. Quando definido como 0, há diferenciação.
REGEX_Match("123-45-6789", "\d{3}-\d{2}-\d{4}")
retorna -1 ou verdadeiro.
REGEX_Replace(String, pattern, replace, icase)
: permite substituir texto usando expressões regulares e retorna a cadeia de caracteres resultante das funções RegEx de encontrar padrão (pattern) e substituir cadeia de caracteres (replace). Todas as ocorrências são substituídas, não apenas a primeira.
O parâmetro "replace" pode ser tanto um valor especificado, como mostrado abaixo, ou um grupo marcado, como "$1". Certifique-se de que os grupos marcados estejam entre aspas duplas.
O parâmetro
icase
é opcional. Quando especificado, há diferenciação entre maiúsculas e minúsculas.
Por padrão, icase = 1, sem diferenciar maiúsculas de minúsculas.
Quando definido como 0, há diferenciação.
REGEX_Replace("Don't reveal your Social Security number, 123-45-6789","\d{3}-\d{2}-\d{4}", "CLASSIFIED")
retorna "Don't reveal your Social Security number, CLASSIFIED".
REGEX_Replace("Change all domain names from alteryx@Alteryx.com","@.*\.", "@extendthereach.")
retorna "Change all domain names from alteryx@extendthereach.com".
REGEX_Replace("25 test","(\d+)\s.*","$1")
retorna 25.
Replace(String, Target, Replacement):
retorna a cadeia de caracteres (String) após substituir todas as ocorrências da sequência-alvo (Target) com a sequência de substituição (Replacement).
Replace("Good judgment comes from experience", "experience", "awareness")
retorna "Good judgment comes from awareness"
ReplaceChar(String, y, z)
: retorna a cadeia de caracteres (String) após substituir todas as ocorrências de qualquer caractere em y pelo caractere em z. Se z for uma cadeia com mais de um caractere, apenas o primeiro será usado. Se z estiver vazio, todos os caracteres da cadeia que corresponderem a quaisquer caracteres em y serão simplesmente removidos.
ReplaceChar("abcdefb", "b", "_")
retorna "a_cdef_".
ReplaceChar("@a#b%c", "@,#,%", "_")
retorna "_a_b_c".
ReplaceFirst(String, Target, Replacement)
: retorna a cadeia de caracteres (String) após substituir a primeira ocorrência da sequência-alvo (Target) pela sequência de substituição (Replacement).
ReplaceFirst("abcdefb", "b", "_")
retorna "a_cdefb".
ReverseString(String)
: inverte todos os caracteres da cadeia de caracteres (String).
ReverseString("abcdefb")
retorna "bfedcba".
Right(String, len)
: retorna os últimos caracteres (número determinado em len) da cadeia. Se len for menor que 0 ou maior que o comprimento da cadeia de caracteres, esta permanecerá inalterada.
Right("92688", 3)
retorna o valor 688.
StartsWith(String, Target, CaseInsensitive=1)
: verifica se uma cadeia de caracteres (String) começa com a sequência-alvo especificada (Target). Retorna verdadeiro se a cadeia de caracteres (String) inicia com a sequência-alvo (Target); senão, retorna falso.
StartsWith('ABC123', 'ABC')
retorna verdadeiro.
StartsWith('ABC123', 'abc')
retorna verdadeiro.
StartsWith('ABC123', 'abc', 0)
retorna falso.
STRCSPN(String, y)
: retorna o comprimento da porção inicial da cadeia de caracteres (String) consistindo em caracteres que
não
estão em y.
STRCSPN("Bob's Amaco", "~!@#$%^&*'()")
retorna 3. Esse é um teste útil para se certificar de que não há nenhuma pontuação na cadeia de caracteres.
StripQuotes(String)
: remove um par de aspas ou apóstrofos das extremidades da cadeia de caracteres (String).
StripQuotes("Hello there")
retorna Hello there.
StripQuotes("'Hello there,' she said.")
retorna 'Hello there,' she said.
StripQuotes('"Hello there," she said.')
retorna "Hello there," she said.
STRSPN(String, y)
: retorna o comprimento da porção inicial da cadeia de caracteres (String) consistindo em caracteres que estão em (y).
STRSPN("3034408896x105", "0123456789")
retorna 10. Este é um teste útil para se certificar de que uma cadeia é formada por um determinado um conjunto de caracteres.
Substring(String, start, length)
: retorna a subcadeia da cadeia de caracteres (String), começando em "start" e parando após o comprimento informado em "lenght", se informado.
Substring("949-222-4356", 4, 8)
retorna 222-4356.
Substring("949-222-4356", 4, 6)
retorna 222-43.
Substring("949-222-4356", 4)
retorna 222-4356.
TitleCase(String)
: converte a primeira letra de cada palavra da cadeia de caracteres (String) para maiúscula.
TitleCase("john smith")
retorna "John Smith".
Trim(String, y)
: remove os caracteres em y do início e do fim da cadeia de caracteres (String). O parâmetro y é opcional: por padrão, essa função remove espaços em branco. Observe, nos exemplos da função TRIM, que os caracteres especificados são removidos. Não importa a ordem em que os caracteres estão.
Trim("!see instructions!!!", "!")
retorna "see instructions".
Trim(" Test123 ")
returns "Test123", sem os espaços no início e no fim.
TrimLeft(String, y)
: remove os caracteres em y do início da cadeia de caracteres (String). O parâmetro y é opcional: por padrão, essa função remove espaços em branco.
TrimLeft("** special invitation ", " *")
retorna "special invitation ".
TrimRight(String, y)
: remove os caracteres em y do final da cadeia de caracteres (String). O parâmetro y é opcional: por padrão, essa função remove espaços em branco.
Mesmo que você queira cortar um grupo de caracteres em sequência, as funções Trim não respeitam a ordem dos caracteres – elas tratam a cadeia em "y" como uma simples lista. Portanto, elas cortam TODOS os caracteres especificados na lista. Se você quiser substituir uma sequência como um todo, use uma função Replace ou uma função Regex em sua expressão.
TrimRight("John Smith ")
retorna "John Smith".
TrimRight("John Smith**","*")
retorna "John Smith".
Uppercase(String)
: converte a cadeia de caracteres (String) para letras maiúsculas.
Uppercase("John Smith")
retorna "JOHN SMITH".
UuidCreate()
: cria um identificador exclusivo.
UuidCreate()
retorna um valor único, como "ba131836-1ba3-4d42-8f7e-b81a99c2e838".
Ao fazer referência ao comprimento ( length ) de uma cadeia de caracteres, o primeiro caractere é contado como 1 (o comprimento da cadeia "registro" é 8).
No entanto, ao fazer referência à posição dos caracteres dentro de uma cadeia, as posições são contadas entre os caracteres. Basta pensar na posição do primeiro caractere como sendo 0. Assim, a posição da letra "g" na cadeia "registro" é 2.