RIGHT

Zeichen von rechts

RIGHT kopiert, ausgehend von rechts, n Zeichen der als erste Eingangsvariable angegebenen Zeichenfolge in die Ausgangsvariable. Die Anzahl der zu liefernden Zeichen n legen Sie mit der zweiten Eingangsvariable fest.

Parameter

Eingang

IN (STRING)

1. Eingang: Eingangszeichenfolge

L (INT)

2. Eingang: Anzahl der Zeichen der Eingangszeichenfolge, die von rechts kopiert werden

Ausgang

Unnamed output (STRING)

kopierte Zeichenfolge

Anmerkungen

  • Wenn Sie diesen Befehl mit UTF-8-Zeichenfolgen verwenden, beachten Sie die Hinweise zu UTF-8-Zeichenfolgen unter dem Datentyp STRING.

  • Wenn die Anzahl der zu liefernden Zeichen größer ist als die Eingangszeichenfolge, wird die gesamte Zeichenfolge in die Ausgangsvariable kopiert.

  • Wenn die Ausgangs-Zeichenfolge länger ist als die für die Ausgangsvariable im Feld “Typ” definierte Länge, werden nur so viele Zeichen kopiert, wie in die Ausgangsvariable passen.Die Systemvariable sys_bIsCarry wird gesetzt.

Fehleralarmmerker

sys_bIsOperationErrorHold (wird auf TRUE gesetzt und bleibt TRUE)

wenn eine am Eingang oder Ausgang angegebene Zeichenfolge eine ungültige Zeichenfolge ist

sys_bIsOperationErrorNonHold (wird für einen Zyklus auf TRUE gesetzt)

wenn eine am Eingang oder Ausgang angegebene Zeichenfolge eine ungültige Zeichenfolge ist

sys_bIsCarry (wird für einen Zyklus auf TRUE gesetzt)

wenn die Ausgangs-Zeichenfolge länger ist als die für die Ausgangsvariable im Feld "Typ" definierte Länge

Beispiel

POE-Kopf

Im POE-Kopf werden alle Ein- und Ausgangsvariablen deklariert, die für die Programmierung dieser Funktion verwendet werden. Für alle Programmiersprachen wird der gleiche POE-Kopf verwendet.

	VAR
		sInput: STRING[15]:='abcd efg hijk';
			(*sample string*)
		iChar_number: INT:=4;
			(*characters to be delivered*)
		sResult: STRING[4]:='';
			(*result here= 'hijk'*)
	END_VAR

In diesem Beispiel wurden die Eingangsvariablen sInput und iChar_number deklariert. Stattdessen können Sie die Eingangszeichenfolge ('abcd efg hijk') und die Anzahl der zu liefernden Zeichen auch direkt an die Eingänge der Funktion schreiben. Die Zeichenfolge muss im POE-Kopf und an den Funktionseingängen in Apostrophen stehen.

POE-Rumpf

Aus sInput ('abcd efg hijk’) werden, ausgehend von rechts, die mit iChar_number festgelegte Anzahl Zeichen (4) in sResult ('hijk’) kopiert.

KOP-Rumpf

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,RIGHT!,Instance,10,0,15,4,,?DIN?DL?C);
B(B_VARIN,,sInput,8,1,10,3,);
B(B_VARIN,,iChar_number,8,2,10,4,);
B(B_VAROUT,,sResult,15,1,17,3,);
L(1,0,1,5);
        END_NETWORK_BODY
    END_NET_WORK
END_BODY

ST-Rumpf

sResult:=RIGHT(IN := sInput, L := iChar_number);

AWL-Rumpf

LD

sInput

RIGHT

iChar_number

ST

sResult

Letzte Änderung am: 2022-04-19Feedback zu dieser SeitePanasonic Hotline