Supprimer des caractères d’une chaîne de caractères
DELETE supprime L caractères de la chaîne de caractères de la variable d’entrée IN, à partir de la position P, 1 désignant la position du premier caractère de la chaîne de caractères. Le résultat est écrit dans la variable de sortie.
Entrée
Chaîne de caractères d’entrée
Nombre de caractères de la chaîne de caractères d’entrée qui sont supprimés
Position de départ de la suppression, 1 désignant la position du premier caractère de la chaîne de caractères
Sortie
Chaîne de caractères résultante
Si cette instruction est utilisée avec des chaînes de caractères en UTF-8, consultez les remarques concernant les chaînes de caractères en UTF-8 sous “STRING”.
Si la chaîne de caractères de sortie est d’une longueur supérieure à celle définie pour la variable de sortie dans la zone Type, seul le nombre de caractères pouvant être contenu dans la variable de sortie sera copié.La variable système sys_bIsCarry est activée.
Si une chaîne de caractères en entrée ou sortie est invalide.
Si une chaîne de caractères en entrée ou sortie est invalide.
Si la chaîne de caractères de sortie est d’une longueur supérieure à celle définie pour la variable de sortie dans la zone "Type"
Toutes les variables d’entrée et de sortie utilisées pour programmer cette fonction ont été déclarées dans l’en-tête du POU. Le même en-tête de POU est utilisé pour tous les langages de programmation.
VAR
input_string: STRING[15]:='Ideas for life';
character_number: INT:=8;
start_position: INT:=6;
output_string: STRING[5]:='';
END_VAR
Dans cet exemple, les variables d’entrée (input_string, character_number et start_position) ont été déclarées. Vous pouvez également entrer la chaîne de caractères ('Ideas for life'), le nombre de caractères devant être supprimés et la position de départ directement dans la fonction. La chaîne de caractères doit être entrée entre guillemets, à la fois dans l’en-tête du POU et dans la fonction.
character_number (8) désigne le nombre de caractères à supprimer dans la chaîne de caractères input_string ('Ideas for life’) à partir de start_position (6). Le résultat ('Ideas') est écrit dans output_string.
BODY
WORKSPACE
NETWORK_LIST_TYPE := NWTYPELD ;
ACTIVE_NETWORK := 0 ;
END_WORKSPACE
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 5 ;
NETWORK_BODY
B(B_F,DELETE!,Instance,10,0,16,5,,?DIN?DL?DP?C);
B(B_VARIN,,input_string,8,1,10,3,);
B(B_VARIN,,character_number,8,2,10,4,);
B(B_VARIN,,start_position,8,3,10,5,);
B(B_VAROUT,,output_string,16,1,18,3,);
L(1,0,1,5);
END_NETWORK_BODY
END_NET_WORK
END_BODY
output_string:=DELETE(input_string, character_number, start_position);