Sostituisce i caratteri
REPLACE sostituisce i caratteri nella stringa IN1, con P che denota la prima posizione da sostituire e L che denota il numero di caratteri da sostituire con i caratteri specificati da IN2. Il risultato viene scritto nella variabile di uscita.
Ingresso
Stringa di ingresso iniziale
Stringa sostitutiva
Numero di caratteri nella stringa di ingresso da sostituire
Posizione iniziale della stringa di ingresso da sostituire, in cui 1 è il primo carattere della stringa
Uscita
Stringa risultante
Se questa istruzione è utilizzata con stringhe UTF-8, fare riferimento alle note relative alle stringhe UTF-8 sotto il tipo di dati STRING.
Se la lunghezza delle stringhe supera la lunghezza definita per le variabili di ingresso (input_string_1 e input_string_2) nel campo Tipo, si verifica un errore (vedere ).
se una stringa applicata in ingresso o in uscita è una stringa non valida
se una stringa applicata in ingresso o in uscita è una stringa non valida
Tutte le variabili di ingresso e uscita utilizzate per programmare questa funzione sono state dichiarate nell'intestazione del POU. La stessa intestazione del POU è utilizzata per tutti i linguaggi di programmazione.
VAR
output_value: STRING[32]:='';
END_VAR
In questo esempio i valori di costante vengono inseriti direttamente nei pin di contatto di ingresso della funzione. Potete tuttavia dichiarare le variabili nell'intestazione del POU. I valori STRING devono essere inseriti tra virgolette, sia nell'intestazione del POU sia nei pin di contatto. Qui la 'c' nel valore STRING 'MrSpock' è stata sostituita con una 'o', restituendo '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