Cómo: |
La función SUBSTRING extrae una subcadena de una cadena de origen . Si la posición final que ha especificado para la subcadena sobrepasa el final de la cadena de origen, la posición del último carácter de la cadena de origen pasa ser la posición final de la subcadena.
SUBSTRING(string, position, length)
donde:
Alfanumérico
Es la cadena de origen de la que se extrae la subcadena. Puede tratarse de un campo, un número entre comillas simples (‘) o de una variable.
Número entero
Es la posición inicial de la subcadena en string. Si la posición es 0, se trata como si fuera 1. Si la posición es negativa, la posición inicial empieza a contarse hacia atrás, a partir del final de string.
Número entero
El límite de longitud de la subcadena. La posición final de la subcadena se calcula como position + length -1. Si la posición calculada sobrepasa el final de la cadena de origen, la posición del último carácter de string se convierte en la posición final.
Los datos de la subcadena devuelta son de tipo AnV.
En la siguiente solicitud, POSITION determina la posición de la primera letra I en mayúscula, en LAST_NAME, y guarda el resultado en I_IN_NAME: A continuación, SUBSTRING extrae tres caracteres, empezando por la letra I de LAST_NAME, y guarda los resultados en I_SUBSTR.
TABLE FILE EMPLOYEE PRINT COMPUTE I_IN_NAME/I2 = POSITION('I', LAST_NAME); AND COMPUTE I_SUBSTR/A3 = SUBSTRING(LAST_NAME, I_IN_NAME, I_IN_NAME+2); BY LAST_NAME ON TABLE SET PAGE NOPAGE END
La salida es:
LAST_NAME I_IN_NAME I_SUBSTR --------- --------- -------- BANNING 5 ING BLACKWOOD 0 BL CROSS 0 CR GREENSPAN 0 GR IRVING 1 IRV JONES 0 JO MCCOY 0 MC MCKNIGHT 5 IGH ROMANS 0 RO SMITH 3 ITH 3 ITH STEVENS 0 ST
WebFOCUS |