2.4.36 STRING
| | | | | |
Format:
STRING Source1 [ [Source2 ...]
DELIMITED [BY] {Wert3 / SIZE}
...
]
[ Source4 ...]
DELIMITED [BY] {Wert6 / SIZE}
...
]
...
INTO Datenfeld1
[[WITH] POINTER Datenfeld2]
[[ON] OVERFLOW Befehlssequenz1]
[NOT [ON] OVERFLOW Befehlssequenz2]
[END-STRING]
| |
| | | |
Die Source -Felder sind Wert -Felder.
Die STRING -Anweisung dient zum Aneinanderfügen mehrere Zeichenketten. Die Source -Felder werden zeichenweise in das Datenfeld1 gebracht, bis eine der angegebenen Abbruchsbedingungen (DELIMITED BY) zutrifft.
Die Angabe von SIZE bedeutet, daß alle Zeichen des Wertfeldes in das Datenfeld1 übertragen werden.
Durch die Angabe eines Wertfeldes in der DELIMITED -Angabe wird die Übertragung abgebrochen, wenn der Inhalt des Sourcefeldes ab der aktuellen Position mit dem Inhalt des Wertfeldes übereinstimmt.
Die Übertragung in das Zielfeld kann mit der POINTER -Anweisung gesteuert werden.
Datenfeld2 beinhaltet die aktuelle Zeichenposition, ab der die Übertragung beginnen soll.
Nach Beendingung des Befehls wird die aktuelle Position in Datenfeld2 abgespeichert.
Wurde die ON OVERFLOW -Klausel angegeben und sollte der Zielbereich nicht alle Werter aufnehmen können, wird die Befehlssequenz1 abgearbeit.
Achtung : Ist das Datenfeld1 zum Zeitpunkt des STRING -Befehls nicht leer kann dies zu ungewollten Effekten führen:
Beispiel:
01 feld pic x(10).
...
move all 'a' to feld.
string 'test' into feld.
display feld.
...
Anzeige: testaaaaaa
Zurück zu Acc-Cobol Stop Statement
Hoch zu Procedure Divison in COBOL
Weiter zu SUBTRACT
|