Eine Zeichenfolge string kann eine Character-Zeichenfolge, eine Hexa-Zeichenfolge, eine Stringvariable bzw. Teile einer Stringvariablen oder der Inhalt einer Zeile bzw. Teile einer Zeile sein. Es können beliebig viele Einzelstrings miteinander verknüpft werden.
+ | ++ Das Zeichen "+" dient als Verknüpfungszeichen zwischen mehreren Einzelstrings. Falls das Zeichen "+" in Ausnahmefällen nicht eindeutig ist, weil es z.B. für das Konstrukt #L1+#L2 (Inhalt der Zeile, die aus der Zeilennummer #L1 + #L2 gebildet wird), muss als Verknüpfung "++" verwendet werden.
Beispiel:
@crea1:'123456'
@crea2:'xyz'
@crea3:'xxZ3'
@#l1=1
@#l2=2
@#s1='abcdef'
@#s2='XXX' + #s1:1-3: + #l1:1-3: + 2:2-3:*3
@#s3=#l1+#l2:3-4:+#l1++#l2
Inhalt von #S2: 'XXXabc123yzyzyz'
Der zusammengesetzte String besteht aus folgenden Einzelstrings:
Character-Zeichenfolge : 'XXX'
Spalten 1-3 von #S1 : 'abc'
Spalten 1-3 von #L1 (Zeile1) : '123'
Spalten 2-3 von Zeile 2 (3 mal) : 'yzyzyz'
Inhalt von #S3: 'Z3123456xyz
Der zusammengesetzte String besteht aus folgenden Einzelstrings:
Spalten 3-4 von #L1+#l2 = Zeile3 : 'z3'
Alle Spalten der Zeile #L1 = Zeile1: '123567'
Alle Spalten der Zeile #L2 = Zeile2: 'xyz'
string { 'char' | X'hex' | V'char' | L'char' | U'char' | str-var[:col:] | ln[:col:] } [*int]
'char' Character-Zeichenfolge. Falls die Option LOW OFF (Kleinbuchstaben in Großbuchstaben umwandeln) aktiv ist, wird die Zeichenfolge in Großbuchstaben umgewandelt.
In der Zeichenfolge können auch spezielle EDT-System-Variable und Umgebungsvariable verwendet werden, wie z.B. aktueller Dateiname, Datum, Zeit usw. Weitere Informationen.
X'hex' Hexadezimal-Zeichenfolge
U'1234' Hexadezimal-Zeichenfolge im Unicode-Format. Jedes Zeichen besteht aus 4 Halbbytes. Normale ANSI-Zeichen enthalten im 1. Byte X'00' und im 2. Byte den ANSI-Wert.
1 1. Halbbyte des UNICODE-Zeichens
2 2. Halbbyte des UNICODE-Zeichens
3 3. Halbbyte des UNICODE-Zeichens
4 4. Halbbyte des UNICODE-Zeichens
Beispiel:
U'00300031' entspricht der Zeichenfolge '01'
U'20AC'     entspricht der Zeichenfolge '€'
Es ist zu beachten, dass die Bedeutung des Unicode-Strings U'1234' ab der Version 4.0 geändert wurde: Vor der Version 4.0 wurde ein Zeichen des U-Strings jeweils in ein UNICODE-Zeichen umgewandelt, z.B. U'0' wurde als X'0030' interpretiert. Siehe hierzu auch das Kommando SHOWNIL, das in der Version 3 zur Bearbeitung von UNICODE-Dateien zur Verfügung stand.
V'char' Diese Variante ist nur als Suchbegriff zulässig. Die Zeichenfolge wird unabhängig von der Klein-/ Großschreibung gesucht, auch wenn unter Optionen/ Einstellungen/Suchen oder mittels des Kommandos SEARCH-OPTION die Option "Klein / Großschreibung beachten" aktiviert ist.
L'char' Diese Variante ist nur als Suchbegriff zulässig. Die Klein-/ Großschreibung wird beim Suchen beachtet, auch wenn unter Optione/Einstellungen/Suchen oder mittels des Kommandos SEARCH-OPTION die Option "Klein / Großschreibung beachten" deaktiviert ist. Wird beim Kommando ON&.... zusätzlich die Option ALL direkt vor L'...' angegeben, darf in diesem Fall "ALL" nicht abgekürzt werden, weil z.B. "ON&CAL'..' als "ON& CHANGE ALL '..' interpretiert wird, vielmehr ist "ON&C ALL L'...' anzugeben.
str-var[:col:]
Zeichenfolgevariable. Der Inhalt der Zeichenfolgevariablen, ggf. eingeschränkt durch die Spaltenangabe col, wird als Zeichenfolge benutzt. Die Zeichen in einer Zeichenfolgevariablen werden immer in UNICODE-Codierung gespeichert. Bei Bedarf wird die Zeichenfolgevariable in den Code des entsprechenden Arbeitsbereichs umgewandelt.
ln[:col:] Als Zeichenfolge wird der Inhalt der Zeile ln, ggf. eingeschränkt durch die Spaltenangabe col, benutzt. Die Zeilennummer kann entweder direkt oder als Line-Variable angegeben werden.
*int Die wahlweise Angabe *int ist dafür vorgesehen, eine Zeichenfolge zu wiederholen. Statt einer Ganzzahl kann auch eine Integer-Variable angegeben werden.
col :cl1 | cl1-cl2 [,cl1 | cl1-cl2.......] :
Eine oder mehrere durch Komma getrennte Spalten oder Spaltenbereiche:
cl1 nur Spalte cl1. Es ist zu beachten, dass nicht wie bei der Spaltenangabe col die Spalten vom cl1 bis zum Zeilenende ausgewählt werden.
Dabei haben cl1 und cl2 den gleichen Wert. Statt einer absoluten Zahl kann auch eine Ganzzahl-Variable (#I0 - #I99) angegeben werden, in der die Spaltennummer gespeichert ist.
cl1-cl2 Spaltenbereich von Spalte cl1 bis Spalte cl2 (Grenzen eingeschlossen). Die Spalte cl2 muss größer oder gleich Spalte cl1 sein.
Beispiele:
 
'String1' 
Direkte Angabe eines Strings
 
x'0506'
Direkte Angabe eines Hexa-Strings
 
v'string1'
Suchstring ohne Beachtung der Groß-Kleinschreibung
 
'Datei !file'
es wird ein String mit dem aktuellen Dateinamen erzeugt, z.B. 'Datei testdat'
  1:4: Zeile 1, Spalte 4
 
#l1:1-5:
Zeile in #L1, Spalte 1 bis 5
 
#l2:5-5:
Zeile in #L2, Spalte 5
  #I1=1  
500:#I1-5:
Zeile 500, Spalte 1 bis 5
  #I1=900   #I2=1000  
#l3:#I1.-#I2:
Zeile in L3, Spalte 900 bis 1000. Vor dem Bindestrich muss ein Punkt angegeben werden, damit der Bindestrich von dem Operator "Minuszeichen" (Subtraktion) unterschieden werden kann.

Hinweis:
Wenn in einer Zeichenfolge ein Hochkomma (') vorkommt, muss es verdoppelt werden.
Beispiele:
'abc'*3             'abcabcabc'
X'50'*4             x'50505050'
#s1                 Inhalt der Zeichenfolgevariablen #S1
5:10-20:            Inhalt der Zeile 5, Spalte 10 bis 20
#s3:#i4.-#i6:*#i9   Inhalt der Zeichenfolgevariablen #S3, Spalte
                 #I4 bis #I6 mit Wiederholungsfaktor #I9
Besonderheit für Suchbegriffe im ON-Kommando
Anstelle des einfachen Hochkommas (') kann auch ein Anführungszeichen (") verwendet werden. Wird eine Suchzeichenfolge links oder rechts von einem Anführungszeichen begrenzt, so bringt man dadurch zum Ausdruck, dass links bzw. rechts von dieser Suchzeichenfolge ein Textbegrenzerzeichen stehen muss. Wenn in einem Suchbegriff ein Anführungszeichen vorkommt, muss es verdoppelt werden.
Der Satz der Textbegrenzerzeichen ist durch den EDT vorbelegt mit den Zeichen +.!*();-/,?:'=", dem Leerzeichen (X'20') und dem Tabulatorzeichen (X'09'). Diese Zeichen können mit dem Kommando DELIMIT verändert werden. Per Definition steht vor dem ersten und hinter dem letzten Zeichen immer ein Trennzeichen.
Beispiel:
Über das ON-Kommando soll in einer Zeile mit dem nachfolgenden Inhalt gesucht werden:
FLIEGEN+*FLIEGEN  ,FLIEGEN  +FLIEGEN*
1        10        20        30
Die Zahlen unter der Zeile zeigen die Spaltennummern an.
Suchbegriff Treffer
'FLIEGEN' auf Spalte 1, 10, 20 und 30
'FLIEGEN" auf Spalte 10 und 20
"FLIEGEN' auf Spalte 1 und 20
"FLIEGEN" auf Spalte 20
Klein- Großschreibung für Suchbegriffe im ON-Kommando
Ist die Option der Menüzeile Optionen / Einstellungen / Suchen /Klein-Großschreibung beachten aktiviert bzw. mit dem Kommando SEARCH-OPTION eingeschaltet, wird die Suchzeichenfolge ohne Beachtung der Klein-Großschreibung verglichen. Die Option gilt nicht für Hexa-Strings (X'string') und L'string'.
Setzt sich ein Suchstring aus mehreren Einzelstrings zusammen, von denen ein Teil ohne und ein Teil mit Berücksichtigung der Klein-Großschreibung verglichen werden soll, wird für den ganzen String die Klein-Großschreibung nicht beachtet.
Beispiel:
@search-option caseless=off
@on&find 'xxx'+V'yyy'
@search-option caseless=on
@on&find 'xxx'+x'61'