F_MID
Einleitung
Der Funktionsblock F_MID dient zur Extraktion einer Teilzeichenkette aus einer gegebenen Zeichenkette. Dabei wird eine bestimmte Anzahl von Zeichen ab einer definierten Startposition extrahiert. Der FB ist Teil der Standard-Charakter- und String-Funktionen gemäß IEC 61131-3.
Schnittstellenstruktur
Ereignis-Eingänge
REQ: Service-Anfrage zur Ausführung der Extraktion. Wird mit den Daten-Eingängen
IN,LundPverknüpft.
Ereignis-Ausgänge
CNF: Bestätigung der erfolgreichen Ausführung der Anfrage. Wird mit dem Daten-Ausgang
OUTverknüpft.
Daten-Eingänge
IN: Die Eingabezeichenkette, aus der die Teilzeichenkette extrahiert werden soll (Typ:
ANY_STRING).L: Die Länge der zu extrahierenden Teilzeichenkette (Typ:
ANY_INT).P: Die Startposition, ab der die Extraktion beginnen soll (Typ:
ANY_INT).
Daten-Ausgänge
OUT: Die extrahierte Teilzeichenkette (Typ:
ANY_STRING).
Adapter
Keine Adapter vorhanden.
Funktionsweise
Der Funktionsblock F_MID extrahiert eine Teilzeichenkette aus der Eingabezeichenkette IN. Die Extraktion beginnt an der Position P und umfasst L Zeichen. Das Ergebnis wird über den Ausgang OUT ausgegeben, sobald der Ereignisausgang CNF ausgelöst wird.
Technische Besonderheiten
Der FB unterstützt beliebige String-Typen (
ANY_STRING) und Integer-Typen (ANY_INT).Die Startposition
Pund die LängeLmüssen gültige Werte innerhalb der Länge der Eingabezeichenkette sein, um korrekte Ergebnisse zu gewährleisten.
Zustandsübersicht
Initialisierung: Der FB wartet auf eine Anfrage über
REQ.Verarbeitung: Bei Empfang von
REQwerden die Eingabedaten verarbeitet und die Teilzeichenkette extrahiert.Ausgabe: Die extrahierte Teilzeichenkette wird über
OUTausgegeben undCNFwird ausgelöst.
Anwendungsszenarien
Extraktion von Teilzeichenketten aus längeren Texten oder Datenstrings.
Verwendung in String-Verarbeitungsroutinen, z.B. zur Parsing von Datenformaten.
⚖️ Vergleich mit ähnlichen Bausteinen
Ähnliche Funktionsblöcke wie
F_LEFToderF_RIGHTextrahieren Teilzeichenketten vom Anfang oder Ende einer Zeichenkette, währendF_MIDeine flexible Extraktion ab einer beliebigen Position ermöglicht.
Fazit
Der F_MID-Funktionsblock bietet eine einfache und effiziente Möglichkeit, Teilzeichenketten aus einer gegebenen Zeichenkette zu extrahieren. Seine Flexibilität und Kompatibilität mit verschiedenen String- und Integer-Typen machen ihn zu einem nützlichen Werkzeug in der String-Verarbeitung.