SHIFT string [BY n PLACES | UP TO pattern]
[CIRCULAR | RIGHT | LEFT] |
[LEFT DELETING LEADING pattern_2] |
[RIGHT DELETING TRAILING pattern_2].
Diese Anweisung dient zur Bearbeitung von Zeichenketten. In der
Grundform wird der Inhalt der Zeichenkette um ein Zeichen nach
links verschoben, das erste Zeichen geht damit verloren. Mit dem
BY-Zusatz kann auch um mehr als ein
Zeichen verschoben werden.
Mit dem Zusatz UP TO wird in der zu
bearbeitenden Zeichenkette
nach pattern gesucht und, falls das Muster gefunden wird,
bis zu dieser Position verschoben. Alle drei Varianten können
mit weiteren Zusätzen versehen werden, die Einfluß
auf die Richtung der Rotation haben. Der Zusatz
LEFT ist Standard,
kann also auch weggelassen werden. Mit
CIRCULAR erfolgt eine Rotation
des Inhaltes, die Zeichen gehen also nicht verloren, sondern werden
rechts wieder an die Zeichenkette angefügt. Mit
RIGHT wird
nach rechts rotiert. Die beiden
DELETING-Zusätze verschieben
den Inhalt der Zeichenkette so lange, bis eines der Zeichen aus
pattern_2 an der ersten bzw. letzten Stelle steht.
Alle beteiligten Felder werden unabhängig von ihrem tatsächlichen
Typ als Zeichenketten behandelt.