0 / 0
Volver a la versión inglesa de la documentación
Funciones de cadena
Última actualización: 20 dic 2024
Funciones de cadena (SPSS Modeler)

Con CLEM, puede ejecutar operaciones para comparar series, crear series o acceder a caracteres.

En CLEM, una serie es cualquier secuencia de caracteres entre comillas dobles coincidentes ("string quotes"). Los caracteres (CHAR) pueden ser cualquier carácter alfanumérico único. Se declaran en expresiones CLEM utilizando comillas simples en forma de `<character>`, como `z`, `A`o `2`. Los caracteres que se encuentran fuera de los límites o los índices negativos de una cadena darán como resultado un comportamiento indefinido.

Nota: Las comparaciones entre series que utilizan y no utilizan la retrotracción de SQL pueden generar resultados diferentes cuando existen espacios finales.
Tabla 1. Funciones de serie de CLEM
Función Resultado Descripción
allbutfirst(N, STRING) Serie Devuelve una serie, que es STRING con los primeros N caracteres eliminados.
allbutlast(N, STRING) Serie Devuelve una serie, que es STRING con los últimos caracteres eliminados.
alphabefore(STRING1, STRING2) Boolean Se utiliza para comprobar el orden alfabético de las cadenas. Devuelve true si STRING1 precede a STRING2.
count_substring(STRING, SUBSTRING) Entero Devuelve el número de veces que aparece la subcadena especificada en la cadena. Por ejemplo, count_substring("foooo.txt", "oo") devuelve 3.
endstring(LENGTH, STRING) Serie Extrae los últimos N caracteres de la serie especificada. Si la longitud de la cadena es menor o igual que la longitud especificada, no hay cambios.
hasendstring(STRING, SUBSTRING) Entero Esta función es la misma que isendstring(SUBSTRING, STRING)
hasmidstring(STRING, SUBSTRING) Entero Esta función es la misma que ismidstring(SUBSTRING, STRING) (subserie incorporada).
hasstartstring(STRING, SUBSTRING) Entero Esta función es la misma que isstartstring(SUBSTRING, STRING)
hassubstring(STRING, N, SUBSTRING) Entero Esta función es la misma que issubstring(SUBSTRING, N, STRING), donde N toma el valor predeterminado 1.
hassubstring(STRING, SUBSTRING) Entero Esta función es la misma que issubstring(SUBSTRING, 1, STRING), donde N toma el valor predeterminado 1.
isalphacode(CHAR) Boolean Devuelve un valor true si CHAR es un carácter de la serie especificada (a menudo un nombre de campo) cuyo código de carácter es una letra. De lo contrario, esta función devuelve un valor de 0. Por ejemplo, isalphacode(produce_num(1)).
isendstring(SUBSTRING, STRING) Entero Si la serie STRING termina con la subserie SUBSTRING, esta función devuelve el subíndice entero de SUBSTRING en STRING. De lo contrario, esta función devuelve un valor de 0.
islowercode(CHAR) Boolean Devuelve un valor de true si CHAR es un carácter de letra minúscula para la serie especificada (a menudo un nombre de campo). De lo contrario, esta función devuelve un valor de 0. Por ejemplo, tanto islowercode(``) como islowercode(country_name(2)) son expresiones válidas.
ismidstring(SUBSTRING, STRING) Entero Si SUBSTRING es una subserie de STRING pero no empieza en el primer carácter de STRING o termina en el último, esta función devuelve el subíndice en el que se inicia la subserie. De lo contrario, esta función devuelve un valor de 0.
isnumbercode(CHAR) Boolean Devuelve un valor true si CHAR para la serie especificada (a menudo un nombre de campo) es un carácter cuyo código de carácter es un dígito. De lo contrario, esta función devuelve un valor de 0. Por ejemplo, isnumbercode(product_id(2)).
isstartstring(SUBSTRING, STRING) Entero Si la serie STRING empieza por la subserie SUBSTRING, esta función devuelve el subíndice 1. De lo contrario, esta función devuelve un valor de 0.
issubstring(SUBSTRING, N, STRING) Entero Busca en la serie STRING, empezando por su carácter Nth , una subserie igual a la serie SUBSTRING. Si la encuentra, esta función devuelve el subíndice entero donde comienza el subcadena coincidente. De lo contrario, esta función devuelve un valor de 0. Si no se proporciona N , esta función toma el valor predeterminado 1.
issubstring(SUBSTRING, STRING) Entero Busca en la serie STRING. Si la encuentra, esta función devuelve el subíndice entero donde comienza el subcadena coincidente. De lo contrario, esta función devuelve un valor de 0.
issubstring_count(SUBSTRING, N, STRING) Entero Devuelve el índice de la aparición Nth de SUBSTRING dentro del STRINGespecificado. Si hay menos de N apariciones de SUBSTRING, se devuelve 0 .
issubstring_lim(SUBSTRING, N, STARTLIM, ENDLIM, STRING) Entero Esta función es la misma que issubstring, pero la coincidencia está restringida a empezar en STARTLIM y finalizar en ENDLIM. Las restricciones STARTLIM o ENDLIM se pueden inhabilitar proporcionando un valor de false para cualquiera de los argumentos; por ejemplo, issubstring_lim(SUBSTRING, N, false, false, STRING) es el mismo que issubstring.
isuppercode(CHAR) Boolean Devuelve un valor de true si CHAR es un carácter de letra mayúscula. De lo contrario, esta función devuelve un valor de 0. Por ejemplo, tanto isuppercode(``) como isuppercode(country_name(2)) son expresiones válidas.
last(STRING) Serie Devuelve el último carácter CHAR de STRING (que debe tener al menos un carácter de longitud).
length(STRING) Entero Devuelve la longitud de la serie STRING (es decir, el número de caracteres que contiene).
locchar(CHAR, N, STRING) Entero Se utiliza para identificar la ubicación de los caracteres en los campos simbólicos. La función busca en la serie STRING el carácter CHAR, iniciando la búsqueda en el carácter Nth de STRING. Esta función devuelve un valor que indica la ubicación (comenzando por N) en la que se encuentra el carácter. Si no se encuentra el carácter, esta función devuelve un valor de 0. Si la función tiene un desplazamiento (N) no válido (por ejemplo, un desplazamiento que está más allá de la longitud de la cadena), esta función devuelve $null$.
Por ejemplo, locchar(`n`, 2, web_page) busca en el campo llamado web_page el carácter `n` que empieza en el segundo carácter del valor del campo.
Asegúrese de utilizar comillas simples invertidas para escribir el carácter especificado.
locchar_back(CHAR, N, STRING) Entero Similar a locchar, excepto que la búsqueda se realiza hacia atrás a partir del carácter Nth . Por ejemplo, locchar_back(`n`, 9, web_page) busca el campo web_page empezando desde el noveno carácter y retrocediendo hacia el inicio de la serie. Si la función tiene un desplazamiento no válido (por ejemplo, un desplazamiento que va más allá de la longitud de la serie), esta función devuelve $null$. Idealmente, debe utilizar locchar_back junto con la función length(<field>) para utilizar dinámicamente la longitud del valor actual del campo. Por ejemplo, locchar_back(`n`, (length(web_page)), web_page).
lowertoupper(CHAR) lowertoupper (STRING) CHAR o String La entrada puede ser una cadena o un carácter, y se utiliza en esta función para devolver un nuevo elemento del mismo tipo, con los caracteres en minúscula convertidos a sus equivalentes en mayúscula. Por ejemplo, lowertoupper(`a`), lowertoupper(“My string”) y lowertoupper(field_name(2)) son todas expresiones válidas.
matches Boolean Devuelve true si una serie coincide con un patrón especificado. El patrón debe ser un literal de serie; no puede ser un nombre de campo que contenga un patrón. Puede incluir un signo de interrogación (?) en el patrón para que coincida exactamente con un carácter; un asterisco (*) coincide con cero o más caracteres. Para que coincida con un signo de interrogación literal o un asterisco (en lugar de utilizarlos como comodines), utilice una barra inclinada invertida (\) como carácter de escape.
replace(SUBSTRING, NEWSUBSTRING, STRING) Serie En el STRINGespecificado, sustituya todas las instancias de SUBSTRING por NEWSUBSTRING.
replicate(COUNT, STRING) Serie Devuelve una cadena que consta de la cadena original copiada el número específico de veces.
stripchar(CHAR,STRING) Serie Permite eliminar determinados caracteres de una cadena o campo. Por ejemplo, puede utilizar esta función para eliminar de los datos símbolos adicionales (como notaciones de moneda) con el fin de obtener un nombre o número simple. Por ejemplo, el uso de la sintaxis stripchar(`$`, 'Cost') devuelve un nuevo campo con el signo de dólar eliminado de todos los valores.
Asegúrese de utilizar comillas simples invertidas para escribir el carácter especificado.
skipchar(CHAR, N, STRING) Entero Busca en la serie STRING cualquier carácter que no sea CHAR, empezando por el carácter Nth . Esta función devuelve una subserie entera que indica el punto en el que se encuentra uno o 0 si cada carácter de Nth en adelante es un CHAR. Si la función tiene un desplazamiento no válido (por ejemplo, un desplazamiento que va más allá de la longitud de la serie), esta función devuelve $null$.
locchar se utiliza a menudo junto con las funciones skipchar para determinar el valor de N (el punto en el que empezar a buscar la serie). Por ejemplo, skipchar(`s`, (locchar(`s`, 1, "MyString")), "MyString").
skipchar_back(CHAR, N, STRING) Entero Similar a skipchar, excepto que la búsqueda se realiza hacia atrás, empezando por el carácter Nth .
startstring(N, STRING) Serie Extrae los primeros N caracteres de la cadena especificada. Si la longitud de la cadena es menor o igual que la longitud especificada, no hay cambios.
strmember(CHAR, STRING) Entero Equivalente a locchar(CHAR, 1, STRING). Devuelve una subserie entera que indica el punto en el que CHAR aparece por primera vez, o 0. Si la función tiene un desplazamiento no válido (por ejemplo, un desplazamiento que va más allá de la longitud de la serie), esta función devuelve $null$.
subscrs(N, STRING) CHAR Devuelve el Nth carácter CHAR de la serie de entrada STRING. Esta función también se puede escribir en formato abreviado como STRING(N). Por ejemplo, lowertoupper(“name”(1)) es una expresión válida.
substring(N, LEN, STRING) Serie Devuelve una serie SUBSTRING, que consta de los LEN caracteres de la serie STRING, empezando por el carácter en el subíndice N.
substring_between(N1, N2, STRING) Serie Devuelve la subserie de STRING, que empieza en el subíndice N1 y termina en el subíndice N2.
textsplit(STRING, N, CHAR) Serie textsplit(STRING,N,CHAR) devuelve la subserie entre la aparición Nth-1 y Nth de CHAR. Si N es 1, devolverá la subserie desde el principio de STRING hasta, pero sin incluir, CHAR. Si N-1 es la última aparición de CHAR, devolverá la subserie de la Nth-1 aparición de CHAR al final de la serie.
trim(STRING) Serie Extrae los espacios en blanco iniciales y finales de la cadena especificada.
trimstart(STRING) Serie Extrae los espacios en blanco iniciales de la cadena especificada.
trimend(STRING) Serie Extrae los espacios en blanco finales de la cadena especificada.
unicode_char(NUM) CHAR La entrada debe ser decimal; no se admiten valores hexadecimales. Devuelve el carácter con el valor Unicode NUM.
unicode_value(CHAR) NÚM Devuelve el valor Unicode de CHAR.
uppertolower(CHAR) uppertolower (STRING) CHAR o String La entrada puede ser una cadena o un carácter y se utiliza en esta función para devolver un nuevo elemento del mismo tipo, con los caracteres en mayúscula convertidos a sus equivalentes en minúscula.
Recuerde especificar las series con comillas dobles y los caracteres con comillas simples invertidas. Los nombres de campos simples deben especificarse sin comillas.
Búsqueda y respuesta de IA generativa
Estas respuestas las genera un modelo de lenguaje grande en watsonx.ai que se basa en el contenido de la documentación del producto. Más información