Reemplazar caracteres
REPLACE reemplaza los caracteres de la cadena IN1, donde P indica la primera posición a reemplazar y L el número de caracteres a reemplazar con los caracteres especificados por IN2. El resultado se guarda en la variable de salida.
Entrada
Primera cadena
Cadena que va a reemplazar los caracteres de la cadena de entrada
Número de caracteres a reemplazar en la cadena de entrada
Posición inicial de la cadena de entrada que se va a reemplazar, donde 1 es el primer carácter de la cadena
Salida
Resultado
Si esta instrucción se utiliza con caracteres UTF-8, consultar las notas relativas a los caracteres UTF-8 en el tipo de datos STRING.
Si las cadenas son más largas que la longitud definida para las variables de entrada (input_string_1 y input_string_2) en el campo Tipo, se genera un error (consultar ).
si una cadena aplicada en la entrada o la salida es una cadena no válida.
si una cadena aplicada en la entrada o la salida es una cadena no válida.
Todas las variables de entrada y de salida utilizadas para la programación de esta función han sido declaradas en la Cabecera de la POU. Se utiliza la misma cabecera de la POU para todos los lenguajes de programación.
VAR
output_value: STRING[32]:='';
END_VAR
En este ejemplo se introducen directamente las constantes en las entradas de la función. También se pueden declarar las variables en la cabecera de la POU. Las cadenas de caracteres deben ir entre comillas simples, tanto en la cabecera de la POU como en la función. En este caso el carácter 'c' en la cadena 'MrSpock' se ha sustituido por una 'o', generando como resultado la cadena 'MrSpook'.
BODY
WORKSPACE
NETWORK_LIST_TYPE := NWTYPELD ;
ACTIVE_NETWORK := 0 ;
END_WORKSPACE
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 6 ;
NETWORK_BODY
B(B_VARIN,,'MrSpock',6,1,8,3,);
B(B_VARIN,,'o',6,2,8,4,);
B(B_VARIN,,1,6,3,8,5,);
B(B_VARIN,,6,6,4,8,6,);
B(B_VAROUT,,output_value,14,1,16,3,);
B(B_F,REPLACE!,Instance,8,0,14,6,,?DIN1?DIN2?DL?DP?C);
L(1,0,1,6);
END_NETWORK_BODY
END_NET_WORK
END_BODY