Der EDT hält das Ergebnis der Treffersuche in lokalen Schaltern bzw. in Variablen fest.
Mit @IF (Format 3) kann abgefragt werden, ob bei der Ausführung der letzten @ON-Anweisung ein Treffer festgestellt wurde oder ob die aktuelle Arbeitsdatei leer war. Im Trefferfalle kann zusätzlich noch die Spaltennummer abgefragt werden, in der die erste Trefferzeichenfolge beginnt.
Außerdem hält der EDT in zugreifbaren Variablen die Ergebnisse des Suchvorganges fest.
Die Nummer der Zeile, in der der EDT den ersten Treffer feststellt, wird in der Zeilennummervariablen #L0
und unter dem Zeilennummern-Symbol '?'
festgehalten. Wird kein Treffer gefunden oder wird der Treffer in einer Zeichenfolgevariablen festgestellt, bleiben die Werte von #L0
und '?'
unverändert.
Die Nummer der Spalte, in der beim ersten festgestellten Treffer der Suchbegriff beginnt (unabhängig ob Zeilen oder Zeichenfolgevariable), wird in der Ganzzahlvariablen #I0
gespeichert; die Nummer der Spalte, in der sie endet, in der Ganzzahlvariablen #I1
. Wird kein Treffer festgestellt, bleiben die Werte von #I0
und #I1
unverändert.
Das gilt auch für einen in einer Zeichenfolgevariablen ermittelten Treffer.
Mit @PRINT #L0:#I0-#I1 kann man die Trefferzeichenfolge auf dem Bildschirm ausgeben lassen, wenn der Treffer in einer Zeile lag. Wenn die Operanden V
und ALL
angegeben sind, werden in der Ganzzahlvariablen #I2
die Anzahl der Trefferzeilen bzw. die Anzahl der Zeichenfolgevariablen, die den Suchbegriff enthalten, und in der Ganzzahlvariablen #I3
die Gesamtanzahl der Treffer gespeichert.
Spaltenangaben bezeichnen unabhängig vom eingestellten Zeichensatz Zeichen- und keine Byteadressen.
Bei negativer Suche wird nach dem Auffinden des ersten Satzes, in dem der Suchbegriff nicht vorkommt, in der Ganzzahlvariablen #I0
die Anfangsposition und in der Ganzzahlvariablen #I1
die Endposition des untersuchten Spaltenbereiches gespeichert.
Wenn die Endposition des Spaltenbereichs größer als die Satzlänge ist, wird in #I1
die Satzlänge gespeichert.
Beispiel
Die Arbeitsdatei enthalte eine Zeile mit der Zeichenfolge ’XXX-ABCD-YYY’.
Suchbegriff | Trefferstring | Inhalt von |
|
|
|
|
|
|
|
|
|
|
|
|