Mit dem Befehl "GFS\..." können
Sie einen definierten Teil aus der Variablen
"TempText" separieren bzw. manipulieren. Der Teil ist entweder durch Angabe
der Startposition und der Länge -
durch Komma getrennt - zu präzisieren, oder durch Angabe einer Suchzeichenfolge. Bei Angabe einer Suchzeichenfolge
können Sie festlegen, wieviel Zeichen vor oder nach der Suchzeichenfolge Sie
separieren möchten, indem Sie die Anzahl vor oder nach dem Suchzeichen
eintragen und durch einen Senkrechtstrich ("|") abtrennen. Bei Angabe von "0"
für den Wert werden sämtliche Zeichen vor bzw. nach der Suchzeichenfolge
zurückgegeben.
Wenn die Suchzeichenfolge Ziffern enthält, müssen
Sie vor die Suchzeichenfolge
das Zeichen "$" setzen, sonst wird möglicherweise die Suchzeichenfolge als
Anzahl interpretiert.
Wenn die Suchzeichenfolge mehrmals in TempText vorkommt,
können Sie mit
einem nachgestellten ">>x" präzisieren, das wievielte Vorkommen Sie meinen
("x" ist der entsprechende Wert).
Wenn Sie eine bestimmte Anzahl Zeichen vom Stringende
separieren wollen,
geben Sie im Datenteil nur die Zeichenanzahl ein.
Wenn sie im Datenteil "LC" oder "lc" angeben, wird der Text in der
programminternen Variablen "TempText" in Kleinbuchstaben umgewandelt;
analog bei Angabe von "UC" oder
"uc" in Großbuchstaben.
Wenn Sie eine Zeichenfolge rechts kürzen wollen,
geben Sie im Datenteil "<<"
und danach die Zeichenanzahl ein, um welche die Zeichenfolge verkürzt werden
soll. Alternativ können Sie auch die abzuschneidende Anzahl mit negativem
Vorzeichen eintragen.
Mit einem nachgestellten "#" können
Sie Leerzeichen vor oder nach dem
Rückgabestring entfernen.
Die Variable "TempText" können Sie
entweder direkt mittels "STT\...", über die
Zuweisung einer Variablen (STT\$$xyz) bzw. eines Schlüsselworts (STT\?pfad)
oder durch Kopieren aus einem Fenster, einer Datei oder dem Clipboard belegen
(siehe dazu "CFW\...", "CFC\..." etc.).
Der Teilstring ist dann in "TempText"
hinterlegt. Sie können das Ergebnis der Stringmanipulation aber auch direkt
einer benutzerdefinierten Variablen zuweisen, indem Sie am Ende der
Befehlszeile das Zeichen ">" angeben und danach den Variablennamen ("$$xyz").
Die Variable muß vorher nicht definiert werden.
Beispiele:
STT\asddrtz5o 2kitrm
GFS\2,3 'TempText enthält jetzt "sdd"
GFS\4|z5o 'TempText enthält jetzt "ddrt"
GFS\4|z5o>$$txt'Die Variable "$$txt" enthält jetzt "ddrt"
GFS\z5o|4 'TempText enthält jetzt " 2ki"
GFS\z5o|4# 'TempText enthält jetzt "2ki"
GFS\4 'TempText enthält jetzt "itrm"
GFS\1 'TempText enthält jetzt "m"
GFS\<<5 'TempText enthält jetzt "asddrtz5o 2"
GFS\-5 'TempText enthält jetzt "asddrtz5o 2"
XTT\ 'bei Haltepunkt anzeigen
STT\?desktop
GFS\0|\>>2 'ergibt unter Win2K z.B. "C:\Dokumente und
Einstellungen"
Einfache Zerlegungen lassen sich zweckmäßig
mit dem Befehl "GSS\..."
durchführen. Im Datenteil sind dazu Startposition, Endposition und
Ausgangsstring (oder Variablenname) nach folgendem Schema anzugeben:
GSS\S, E[|Text oder Variable]
S = Startposition,
E = Endposition.
Wenn S negativ ist, bezieht sich die Startposition auf das Stringende.
Wenn E = 0 (Null) ist, wird der String von der Startposition bis zum Ende
wiedergegeben.
Wenn E negativ ist, wird der String am Ende um E Zeichen gekürzt.
Wenn Sie eine bestimmte Anzahl an Zeichen links vom Stringende separieren
wollen, geben Sie den Abstand der Zeichengruppe vom Stringende als negativen
Wert in E an und die Startposition als negativen Wert bezogen auf das
Stringende in S:
GSS\-5,-2|asddrtz5o 'liefert "rtz" in $v1$
Wenn Trennzeichen und Text fehlen, wird der Inhalt von "TempText" als
Ausgangsstring benutzt.
Das Ergebnis wird standardmäßig in einer programminternen Variablen
gespeichert, auf die sie mit der Zeichenfolge "$v1$" zugreifen können. Wenn Sie
am Ende des Datenteils das Zeichen ">"
und einen Variablennamen angeben,
wird das Ergebnis direkt dieser Variablen zugewiesen:
STT\asddrtz5o 2kitrm
GSS\2,10 '$v1$ enthält jetzt "sddrtz5o "
GSS\5,-3>$$aaa '$$aaa enthält jetzt "rtz5o 2ki"
Mit "GSL\..." können Sie die Länge eines Strings ermitteln. Dieser Wert wird in
einer programminternen Variablen gespeichert, auf die Sie mit den Zeichenfolge
"$v1$" zugreifen können. Alternativ können Sie am Ende des Datenteils das
Zeichen ">" und danach einen Variablennnamen ("$$xyz") angeben; dann wird
der Wert direkt an diese Variable übergeben.
Wenn Sie den Datenteil leer lassen, wird die Länge
der programminternen
Variablen "TempText" ermittelt, ansonsten die Länge des Strings, der durch die
im Datenteil angegebene Zeichenfolge repräsentiert wird, z.B. ein Variablenname
(siehe auch "STT\", "CFW\", "CFF\", "VAR\").
Beispiele:
DVV\1
STT\abracadabra
GSL\
VAR\$$var=$v1$ '# enthält den Wert 11
GSL\abracadabra>$$stl '# $$stl enthält den Wert 11
'...
STW\thunder&&form\remote editor
SPC\richtextwndclass\*
CFW\
GSL\
VAR\$$var=$v1$ '# enthält die Länge des Textes im Remote-Editor
Mit "GCC\..." können Sie die Anzahl einer bestimmten Zeichenfolge ermitteln,
die in einem String enthalten ist, sowie deren Position(en).
Im Datenteil ist mindestens die zu zählende Zeichenfolge (ein oder mehrere
Zeichen) anzugeben. Dann wird der in "TempText" enthaltene String untersucht
und das Zählergebnis in einer programminternen Variablen gespeichert, auf die
Sie mit der Zeichenfolge "$v1$" zugreifen können (zur Belegung von "TempText"
siehe "STT\").
Sie können den zu untersuchenden Text aber auch aus einer Variablen beziehen.
Dann geben sie nach der zu zählenden Zeichenfolge das Zeichen "<" und den
Namen der Variablen an, welche den Text enthält.
Wenn Sie das Ergebnis wieder direkt einer Variablen zuweisen möchten, geben
Sie deren Namen nach einem ">"
am Ende des Datenteils an.
Die Positionen der gefundenen Zeichenfolgen werden
in den Sytemvariablen
"$v2$" bis "$v6$" hinterlegt.
Ist die Anzahl der Fundstellen größer als 5, enthält
"$v6$" die restlichen Positionen, jeweils getrennt durch einen Senkrechtstrich
("|").
Beispiel:
DVV\1+
VAR\$$aaa=abracadabra
GCC\ab<$$aaa>$$bbb
Mit "SBD\" können Sie aus einem
String, der mittels eines Zeichens oder einer
Zeichenfolge (Delimiter DL) gruppiert ist, einzelne Gruppen separieren. Dazu ist
der Datenteil wie folgt zu gestalten:
TZ String TZ DL TZ Term-Nr. [TZ LastDL]
([] = optional; die Leerzeichen können weggelassen werden).
TZ = Trennzeichen zwischen den Befehlsparametern. Dieses Trennzeichen muß
so gewählt werden, daß es nicht mit dem Delimiter übereinstimmt und in dem
zu separierenden String keinesfalls vorkommt!
String = der zu analysierende String (oder eine Variable),
DL = Delimiter (ein oder mehrere Zeichen oder Variable).
Wenn Sie nur einen Term zwischen zwei benachbarten Delimitern ermitteln
wollen, geben Sie als Term-Nr. die laufende Nummer des gesuchten Terms an.
Wenn Sie mehrere zusammenhängende Terms separieren wollen, geben Sie als Term-Nr. die Nummer des Delimiters vor dem ersten Term an ("0", wenn der
erste Term mit erfaßt werden soll) und als LastDL die Nummer des Delimiters
des letzten Terms ("0", wenn der letzte Term mit erfaßt werden soll und die
Anzahl der Terms nicht bekannt ist). Das Ergebnis wird in eine programminterne
Variable geschrieben, auf die Sie mit der Zeichenfolge "$v1$" zugreifen und bei
Bedarf an eine benutzerdefinierte Variable übergeben können.
Wenn Sie einen Term zwischen zwei benachbarten Delimitern
suchen, werden -
soweit vorhanden - die auf den gesuchten Term folgenden Terms (maximal mit
dem gesuchten insgesamt 6) in Systemvariable geschrieben, auf die Sie mit den
Zeichenfolgen "$v2$" bis "$v6$"
zugreifen können. Das ist hilfreich, wenn Sie
mehrere Terms benötigen und erspart dann ggf. den wiederholten Aufruf des
Befehls.
Beispiel:
VAR\$$str=abc,defg,hijklm,nopqrs
SBD\|$$str|,|3 'ergibt "hijklm" in "$v1$";
SBD\|$$str|,|4 'ergibt "nopqrs" in "$v1$";
SBD\|$$str|,|0|3 'ergibt "abc,defg,hijklm" in "$v1$";
SBD\|$$str|,|1|3 'ergibt "defg,hijklm" in "$v1$";
SBD\|$$str|,|2|0 'ergibt "hijklm,nopqrs" in "$v1$";
Mit dem Befehl "FMT\..." läßt
sich eine Zeichenfolge in eine bestimmte Formatierung bringen. Der Befehl läßt sich anwenden entweder
- auf die programminterne Variable "TempText" oder auf
- allgemeine Variable ("$$xxx"; siehe auch "VAR\").
Wenn Sie die Formatierung für "TempText" durchführen wollen, geben Sie im
Datenteil nur das Format an; bei Formatierung von Variablen geben Sie zuerst
die Variable und danach - abgetrennt durch einen Senkrechtstrich ("|") - das Format an.
Mit "ENC\" können Sie einen
String verschlüsseln bzw. wieder entschlüsseln, und
zwar entweder mit einem programminternen oder einem individuellen Schlüssel.
Die Syntax lautet:
ENC\e oder d|Variablenname[|Schlüssel]
"e" steht für "encrypt" (Verschlüsseln), "d" für
"decrypt" (Entschlüsseln). Die
Variable enthält den zu ver/entschlüsselnden String. Nach der Operation wird
der String wieder in die Variable zurückgeschrieben. Als Schlüssel (optional)
können Sie eine beliebige Zeichenfolge angeben.
Beispiele:
FMT\0000 'formatiert "TempText" vierstellig mit führenden Nullen
FMT\$$num|0000 'formatiert die Variable "$$num" vierstellig mit führenden
Nullen.
DVV\1
VAR\$$dat=$date$
FMT\$$dat|dddd 'zeigt den Wochentag des aktuellen Datums an, z.B. Mittwoch
DVV\1
VAR\$$dat=$date$
FMT\$$dat|long date 'zeigt das aktuelle Datums in der Form
'Wochentagname, Tagzahl.
Monatsname Jahreszahl an, z.B.
'Freitag, 12. Juli
2002
DVV\1
CFF\?exepfad\remote.ini>$$txt
ENC\e|$$txt
CAS\1
ENC\d|$$txt
CAS\2
ENC\e|$$txt|12345
CAS\1
ENC\d|$$txt|12345
© 2006 by Delphin Software