Extrae una cadena de una posición deseada.
TARGET = substring(INPUT, STARTPOSITION, COUNT);
1 4 2 3
# | Descripción |
1 | [Datos de destino] Establezca el destino donde desea almacenar la cadena extraída. |
2 | [Start position] Valor entero que especifica el punto de inicio para la extracción de la cadena. El valor debe ser mayor o igual que 1 y menor o igual que la posición inicial extraíble. |
3 | [Number of characters] Defina el número de caracteres a extraer. El valor debe ser mayor o igual que 1, y menor o igual que el número de caracteres que se pueden extraer. Los caracteres de doble byte se cuentan como un solo carácter. |
4 | [Datos de origen] Defina el destino donde se almacena la cadena a extraer. |
(Ejemplo)
Var4 = substring(Var3,Var5,Var1);
Variable en [Source Data] |
[Start position] |
[Number of characters] |
Variable en [Destination Data] |
Comentarios | |
Cadena de destino |
Número máximo de bytes | Cadena extraída para almacenar | |||
ABCDE | 2 | 3 | 5 | BCD | - |
4 | 3 | 5 | (ninguno) | No se almacena una cadena porque el [Number of characters] supera el número de caracteres recuperables. Se considera como fallido en la operación "Resultado de la operación". |
|
6 | 3 | 5 | (ninguno) | No se almacena una cadena porque la [Start position] excede la posición de inicio disponible. Se considera fallida en el "Resultado de la operación". |
|
0 | 3 | 5 | (ninguno) | No se almacena una cadena porque la [Start position] es menor que 1. Se considera fallida en el "Resultado de la operación". |
|
-1 | 3 | 5 | (ninguno) | No se almacena una cadena porque la [Start position] es menor que 1. Se considera fallida en el "Resultado de la operación". |
|
4 | 0 | 5 | (ninguno) | No se almacena una cadena porque el [Number of characters] es menor que 1. Se considera como fallido en la operación "Resultado de la operación". |
|
4 | -1 | 5 | (ninguno) | No se almacena una cadena porque el [Number of characters] es menor que 1. Se considera como fallido en la operación "Resultado de la operación". |
|
2.1 | 3 | 5 | BCD | La parte decimal de la [Start Position] está truncada. | |
2 | 3,5 | 5 | BCD | Los valores a la derecha de la coma decimal en [Number of characters] se eliminan. |
|
ABCDEF | 1 | 6 | 5 | (ninguno) | No se almacena una cadena porque la cadena convertida ha superado el número máximo de bytes que se pueden almacenar. Se considera como fallido en la operación "Resultado de la operación". |
AB(0x00)CDE | 2 | 3 | 5 | (ninguno) | No se almacena una cadena. Si hay un NULL (0x00), la cadena se termina ahí. Como resultado, el [Número de caracteres] supera el número de caracteres recuperables. Se considera como fallido en la operación "Resultado de la operación". |
4 | 3 | 5 | (ninguno) | No se almacena una cadena. Si hay un NULL (0x00), la cadena se termina ahí. Como resultado, la [Start position] excede la posición de inicio disponible. Se considera fallida en el "Resultado de la operación". |
|
AあB | 1 | 3 | 5 | AあB | La cadena se almacena según el [Number of characters]. *1 |
2 | 3 | 5 | (ninguno) | No se almacena una cadena porque el [Number of characters] supera el número de caracteres recuperables. Se considera como fallido en la operación "Resultado de la operación". |
|
2 | 2 | 5 | あB | La cadena se almacena según el [Number of characters]. *1 |
*1 Si el número máximo de bytes de la variable [Destination data] es inferior al tamaño de la cadena recuperada, la operación fallará. El número máximo de bytes depende de la codificación de la variable de [Destination Data].