Replace

TwinCAT TIA
Werkzeuge String Funktionen

ns=2;s=DEPRAG Smart/Utilities/StringOperations/Replace

Ersetzt in einem Text alle Vorkommen einer angegebenen Zeichenkette durch eine andere.

Parameter:

    OldString
    Der Text der in StringToReplaceIn durch NewString ersetzt wird.
    NewString
    Der Text wird in StringToReplaceIn anstatt OldString eingefügt.
    IgnoreCase
    Eine boolesche Variable, die angibt ob die Groß-/Kleinschreibung beim Vergleich ignoriert werden soll oder nicht.

Rückgabewert:

    Replace
    Eine Struktur-Variable vom Typ OpcMethodReturnValueString. In der Eigenschaft Result sind die befehlsspezifischen Rückgabewerte enthalten.
      Result
      Der Text StringToReplaceIn indem alle alten Zeichen (Parameter OldString) durch den neuen Text (Parameter NewString) ersetzt sind.

Beispiele:

Neben den bereits erläuterten Parametern sind für die Implementierung in TwinCAT 3 nachfolgende Variablen anzulegen / zu übergeben:

Beckhoff Parameter:

    bStringReplace
    Eine boolesche Variable, über welche die Ausführung des Replace-Befehls getriggert werden kann.
    OutputDataStringReplace
    Eine Instanz der "ST_StringOutputData" Struktur in welche der Rückgabewert der Replace-Methode geschrieben wird.
    hrStringReplace
    Hiermit kann die Ausführung des Befehls überwacht werden. Fehler-Codes haben den Typ "HRESULT".
    fbStringOperations
    Eine Instanz des, mit der DEPRAG Smart-Bibliothek gelieferten, "FB_StringOperations" Funktionsbausteins.
    StringToReplaceIn
    Der Text in dem ein Text durch ein anderen ersetzt wird.
    StringToReplaceInLength
    Die Länge der Zeichenkette, in der die eine Zeichenkette durch die andere ersetzt werden soll.
    OldString
    Der Text der in StringToReplaceIn durch NewString ersetzt wird.
    OldStringLength
    Die Länge der alten Zeichenkette, deren Vorkommnisse durch eine neue Zeichenkette ersetzt werden soll.
    NewString
    Der Text wird in StringToReplaceIn anstatt OldString eingefügt.
    NewStringLength
    Die Länge der neuen Zeichenkette, die jedes Vorkommen der alten Zeichenkette ersetzen soll.
    IgnoreCase
    Eine boolesche Variable, die angibt ob die Groß-/Kleinschreibung beim Vergleich ignoriert werden soll oder nicht.
    ConnectionHandle
    Beim Verbindungsaufbau zwischen DEPRAG Smart Server und Ihrem OPC UA Client erhaltenes "ConnectionHandle".


VAR
    bStringReplace   : BOOL;
    OutputDataStringReplace : ST_StringOutputData;
    hrStringReplace   : HRESULT;

    fbStringOperations : FB_StringOperations;
END_VAR

hrStringReplace := fbStringOperations.StringReplace(
      bExecute     := bStringReplace, 
      ConnectionHandle  := depragSmartConnection.ConnectionHandle,
      StringToReplaceIn  := 'IamATestString',
      StringToReplaceInLength := SIZEOF('IamATestString'),
      OldString    := 'Test',
      OldStringLength   := SIZEOF('Test'),
      NewString    := 'Beautiful',
      NewStringLength   := SIZEOF('Beautiful'),  
      IgnoreCase    := TRUE, 
      OutputData    => OutputDataStringReplace);
IF hrStringReplace <> S_FALSE THEN 
      bStringReplace := FALSE;
END_IF
                                                    

Für Beispiele und Erklärungen bezüglich der Aufrufe von Knoten via Siemens TIA Portal sei an dieser Stelle auf den Unterpunkt "Siemens TIA Portal" in Abschnitt "Erste Schritte" verwiesen.