Una función de cadena realiza operaciones en datos de texto. Utiliza una función de cadena para limpiar datos, convertir datos a un formato diferente, cambiar mayúsculas y minúsculas, calcular métricas sobre los datos o realizar otras manipulaciones. Utiliza funciones de cadena solo con tipos de datos de cadena.
Contains (String, Target, CaseInsensitive = 1)
: busca la ocurrencia de una cadena especifica dentro de una cadena. Devuelve verdadero si la cadena (String) contiene el objetivo (Target); si no, devuelve falso.
Contains('123ABC', 'ABC')
devuelve verdadero.
Contains('123ABC', 'abc')
devuelve verdadero.
Contains('123ABC', 'abc', 0)
devuelve falso.
CountWords(string)
: devuelve un conteo de las palabras en una cadena especificada. Las palabras son definidas por caracteres separados por un espacio.
CountWords("Basic Variables Households")
devuelve 3.
CountWords("Basic Variables Age:Female (Pop)Age 1")
devuelve 5.
DecomposeUnicodeForMatch(String)
: elimina acentos y expande caracteres compuestos mientras convierte a cadena estrecha. Esta función toma un tipo de dato Alteryx
WString
y lo convierte en un tipo de dato de
cadena
estrecho y en minúsculas. Se quitan todos los acentos y otras decoraciones. Consulta
Tipos de datos
para obtener más información acerca de los tipos de datos de Alteryx.
Importante
Esta función es útil sólo para coincidencia. No se considera una cadena normalizada.
La función no está diseñada para usarse con conjuntos de caracteres no occidentales como el japonés. Debes evitar utilizar esta función en cadenas que puedan contener caracteres anchos y tener en cuenta que los caracteres anchos se convierten en ‘?’.
DecomposeUnicodeForMatch("Prénoms français")
devuelve prenoms francais.
EndsWith(String, Target, CaseInsensitive=1)
: verifica si una cadena termina con una cadena determinada. Devuelve True si la cadena (String) termina con el objetivo (Target), de lo contrario devuelve False. De manera predeterminada, no distingue entre mayúsculas y minúsculas.
EndsWith('123ABC', 'ABC')
devuelve verdadero.
EndsWith('123ABC', 'abc')
devuelve verdadero.
EndsWith('123ABC', 'abc', 0)
devuelve falso.
Importante
La función
FindString
distingue entre mayúsculas y minúsculas.
FindString(String,Target)
: busca la ocurrencia de un objetivo (Target) dentro de una cadena (String) y devuelve la posición numérica del objetivo dentro de la cadena.
Devuelve el índice de base 0 de la primera ocurrencia del objetivo (Target) en la cadena (String). Devuelve -1 si no hay ocurrencia.
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)
: devuelve la palabra en la posición n (con base 0) en la cadena (índice de base 0 significa que la primera palabra está en la posición 0, la segunda en la posición 1, y así sucesivamente). Las palabras se definen como una colección de caracteres separados por un espacio, una tabulación, un retorno o un carácter salto de línea. La presencia de varios delimitadores seguidos se trata como un solo delimitador.
GetWord("Basic Variables Households", 0)
devuelve "Basic".
GetWord("Basic Variables Households", 1)
devuelve "Variables".
Left(String, len)
: devuelve los primeros caracteres (len) en la cadena (String). Si len es menor que 0 o mayor que la longitud de la cadena, la cadena permanece intacta.
Left("92688", 3)
devuelve el valor “926”.
Length(String)
: devuelve la longitud de la cadena (String).
Aviso
Los resultados de longitud pueden diferir entre esta función de Designer y las funciones de SQL. Esto depende de cómo una base de datos en particular maneja los caracteres anchos y los saltos de línea. Por ejemplo, los caracteres de nueva línea no se cuentan en Length en PostgreSQL mientras que sí se cuentan en la función Length de Designer, y los resultados en Designer pueden diferir dependiendo de si se utiliza el controlador ANSI o el Unicode.
Length("92688")
devuelve un valor de 5.
LowerCase(String)
: convierte la cadena a texto en minúsculas.
LowerCase("M1P 1G6")
devuelve "m1p 1g6".
MD5_ASCII(String)
: calcula el hash MD5 de la cadena. Se espera que la cadena contenga solo caracteres estrechos. Los caracteres anchos se convierten en “?” antes de calcular el hash. Se utiliza para tipos de cadena (String); no se recomienda para tipos WString. Debes evitar utilizar esta función en cadenas que puedan contener caracteres anchos.
MD5_UNICODE(String)
: para el motor original tanto como para AMP, calcula el hash MD5 de la cadena almacenada como UTF-16.
MD5_UTF8(String)
: calcula el hash MD5 de la cadena almacenada como UTF-8.
Md5_Ascii("Lá")
, almacenado como Latin1, toma 2 bytes, 4C E1. La función calcula el MD5 de los bytes, lo que da el resultado “0c0ee86cc87d87125ad8923562be952e”.
Md5_Ascii("Lá ☢")
, el carácter ☢, que es ancho, se sustituye por un "?", así que es como si estuvieras calculando Md5_Ascii("Lá?"). Se almacena como Latin1 en 3 bytes, 4C E1 3F. La función calcula el MD5 de los bytes, lo que da el resultado “a5a308ab19acf900efea8fc7b5b77b4d”.
Md5_Unicode("Lá")
, almacenado como UTF-16, toma 4 bytes, 4C 00 E1 00. La función calcula el MD5 de los bytes, resultando en "aa9969dfcca04249842cc457e5b3dd01".
Md5_Unicode("Lá ☢")
, cuando se almacena como UTF-16 toma 8 bytes, 4C 00 E1 00 3C D8 C8 DF. La función calcula el MD5 de los bytes, lo que da el resultado “7c4762d93572dd02a8a405232e966b18”.
Md5_Utf8("Lá")
, almacenado como UTF-8, toma 3 bytes, 4C C3 A1. La función calcula el MD5 de los bytes, resultando en "68f00289dc3be140b1dfd4e031d733f1".
Md5_Utf8("Lá ☢")
, cuando se almacena como UTF-8 toma 7 bytes, 4C C3 A1 F0 9F 8F 88. La función calcula el MD5 de los bytes, lo que da el resultado “383fc0355db728a2078ce41a2ab6211b”.
PadLeft (String, len, char)
: rellena la cadena hacia la izquierda con el carácter especificado a la longitud especificada. Si el relleno definido en (char) es más de un carácter, sólo se usa el primer carácter.
PadLeft("M", 4, "x")
devuelve "xxxM".
PadRight (String, len, char)
: rellena la cadena hacia la derecha con el carácter especificado a la longitud especificada. Si el relleno definido en (char) es más de un carácter, sólo se usa el primer carácter.
PadRight("M", 4, "x")
devuelve "Mxxx".
REGEX_CountMatches(String,pattern,icase)
: devuelve el conteo de coincidencias con el patrón dentro de la cadena.
icase
es un parámetro opcional. Cuando se especifica, distingue mayúsculas y minúsculas. De manera predeterminada, icase = 1, lo cual significa que no se distingue entre mayúsculas y minúsculas. Si se establece en 0, distingue mayúsculas y minúsculas.
REGEX_Match(String,pattern,icase)
: busca la ocurrencia de una expresión regular en una cadena.
Indica si la cadena coincide con el patrón desde el primer carácter hasta el final.
Para buscar algo que no necesariamente comience al principio de la cadena, comienza el patrón con '.*'.
Para buscar algo que no necesariamente va hasta el final de la cadena, termina el patrón con '.*'.
icase
es un parámetro opcional. Cuando se especifica, distingue mayúsculas y minúsculas. De manera predeterminada, icase = 1, lo cual significa que no se distingue entre mayúsculas y minúsculas. Si se establece en 0, distingue mayúsculas y minúsculas.
REGEX_Match("123-45-6789", "\d{3}-\d{2}-\d{4}")
devuelve -1 (verdadero).
REGEX_Replace(String, pattern, replace, icase)
: permite reemplazar texto mediante expresiones regulares y devuelve la cadena resultante de la función RegEx de buscar (pattern) y reemplazar (string). Todas las ocurrencias de las coincidencias se remplazan, no sólo las primeras.
El parámetro “replace” puede ser un valor especificado, como se muestra a continuación, o un grupo marcado, como “$1”. Asegúrate de que los grupos marcados estén entre comillas dobles.
icase
es un parámetro opcional. Cuando se especifica, distingue mayúsculas y minúsculas.
De manera predeterminada, icase=1, que significa que no distingue mayúsculas y minúsculas.
Si se establece en 0, distingue mayúsculas y minúsculas.
REGEX_Replace("Don't reveal your Social Security number, 123-45-6789","\d{3}-\d{2}-\d{4}", "CLASSIFIED")
devuelve "Don't reveal your Social Security number, CLASSIFIED".
REGEX_Replace("Change all domain names from alteryx@Alteryx.com","@.*\.", "@extendthereach.")
devuelve "Change all domain names from alteryx@extendthereach.com".
REGEX_Replace("25 test","(\d+)\s.*","$1")
devuelve 25.
Replace(String, Target, Replacement)
: devuelve la cadena (String) después de reemplazar cada ocurrencia de la cadena (Target) por la cadena (Replacement).
Replace("Good judgment comes from experience", "experience", "awareness")
devuelve "Good judgment comes from awareness".
ReplaceChar(String, y, z)
: devuelve la cadena (String) después de reemplazar cada ocurrencia del carácter (y) por el carácter (z). Si el carácter de reemplazo (z) es una cadena con más de un carácter, sólo se utiliza el primer carácter. Si (z) está vacío, se elimina cualquier carácter de la cadena (String) que coincida con cualquier carácter (y).
ReplaceChar("abcdefb", "b", "_")
devuelve "a_cdef_".
ReplaceChar("@a#b%c", "@,#,%", "_")
devuelve "_a_b_c".
ReplaceFirst(String, Target, Replacement)
: devuelve la cadena (String) después de reemplazar la primera ocurrencia del objetivo (Target) por la cadena de reemplazo (Replacement).
ReplaceFirst("abcdefb", "b", "_")
devuelve "a_cdefb".
ReverseString(String)
: invierte todos los caracteres de la cadena.
ReverseString("abcdefb")
devuelve "bfedcba".
Right(String, len)
: devuelve los últimos caracteres (len) de la cadena. Si len es menor que 0 o mayor que la longitud de la cadena, la cadena permanece intacta.
Right("92688", 3)
devuelve un valor de “688”.
StartsWith(String, Target, CaseInsensitive=1)
: comprueba si una cadena comienza con una cadena determinada. Devuelve verdadero si la cadena (String) comienza con el objetivo (Target) determinado; si no, devuelve falso.
StartsWith('ABC123', 'ABC')
devuelve verdadero.
StartsWith('ABC123', 'abc')
devuelve verdadero.
StartsWith('ABC123', 'abc', 0)
devuelve falso.
STRCSPN(String, y)
: devuelve la longitud del segmento inicial de la cadena (String) que consiste en caracteres que no están en (y).
STRCSPN("Bob's Amaco", "~!@#$%^&*'()")
devuelve 3. Esta es una prueba útil para asegurarse de que no hay puntuación en la cadena.
StripQuotes(String)
: elimina un conjunto coincidente de comillas o apóstrofos de los extremos de la cadena.
StripQuotes("Hello there")
devuelve Hello there.
StripQuotes("'Hello there,' she said.")
devuelve 'Hello there,' she said.
StripQuotes('"Hello there," she said.')
devuelve "Hello there," she said.
STRSPN(String, y)
: devuelve la longitud del segmento inicial de la cadena (String) que consta de caracteres en la cadena (y).
STRSPN("3034408896x105", "0123456789")
devuelve 10. Esta es una prueba útil para asegurarse de que una cadena tiene de un conjunto de caracteres.
Substring(String, start, length)
: devuelve la subcadena de la cadena (String) comenzando en (start) y parando después de (length), si se proporciona.
Substring("949-222-4356", 4, 8)
devuelve "222-4356".
Substring("949-222-4356", 4, 6)
devuelve "222-43".
Substring("949-222-4356", 4)
devuelve "222-4356".
TitleCase(String)
: convierte la primera letra de cada palabra de la cadena en mayúscula.
TitleCase("john smith")
devuelve "John Smith".
Trim(String, y)
: elimina los caracteres de (y) de los extremos de la cadena (String). (y) es opcional y predeterminado a recortar espacios en blanco. Nota que en los ejemplos de la función Trim, los caracteres especificados se recortan. No importa en qué orden estén los caracteres.
Trim("!ver instrucciones!!!", "!")
devuelve “ver instrucciones”.
Trim(" Test123 ")
devuelve "Test123".
TrimLeft(String, y)
: elimina el carácter en la cadena (y) del principio de la cadena (String). (y) es opcional y predeterminado a recortar espacios en blanco.
TrimLeft("** special invitation ", " *")
devuelve "special invitation ".
TrimRight(String, y)
: elimina el carácter en la cadena (y) del final de la cadena (String). (y) es opcional y predeterminado a recortar espacios en blanco.
Aunque tú quieras recortar caracteres de una cadena en un conjunto en orden, la función Trim no respeta el orden de los caracteres y trata la cadena como una simple lista. Por lo tanto, recorta TODOS los caracteres especificados en la lista. Si quieres reemplazar una cadena, utiliza una función Replace o una función RegEx en la expresión.
TrimRight("John Smith ")
devuelve "John Smith".
TrimRight("John Smith**","*")
devuelve "John Smith".
Uppercase(String)
: convierte una cadena a mayúsculas.
Uppercase(“Juan Pérez”)
devuelve “JUAN PÉREZ”.
UuidCreate()
: crea un identificador único.
UuidCreate()
devuelve un valor único como ba131836-1ba3-4d42-8f7e-b81a99c2e838.
Cuando se hace referencia a la longitud de una cadena, el primer carácter se cuenta como 1 (la longitud de la cadena "registro" es 8).
Sin embargo, cuando se hace referencia a la posición del carácter dentro de una cadena, las posiciones son contadas entre los caracteres. Así que piensa en la posición del primer carácter como 0. Por lo tanto, la letra "g" en la cadena "registro" está en la posición 2.