Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

@ON (Format 10) - Löschen der Zeilen bzw. Zeichenfolgevariablen, die den Suchbegriff enthalten

&pagelevel(3)&pagelevel

Dieses Format der @ON-Anweisung bewirkt, dass die Zeile bzw. der Inhalt einer Zeichenfolgevariablen, die den Suchbegriff enthalten, gelöscht wird. Zeichenfolgevariablen werden in diesem Falle wieder mit einem Leerzeichen initialisiert und erhalten den Zeichensatz EDF041.

Operation

Operanden

F-Modus, L-Modus

@ON

{ lines | svars } [,...] [:cols[:] ] FIND [ALL] [F] [R] [NOT] [PATTERN]

search [,int] DELETE

lines

svars

Einer oder mehrere Zeilenbereiche, in denen gesucht werden soll.

Einer oder mehrere Bereiche von Zeichenfolgevariablen, in denen gesucht
werden soll.

cols

Zusammenhängender Spaltenbereich, auf den die Suche eingeschränkt
werden soll.

Enthält die Bereichsangabe nur eine einzelne Spaltenangabe, so wird damit
der Bereich von dieser Spalte bis zum Zeilenende spezifiziert. Ist die erste
Spaltenangabe bereits größer als die Zeilenlänge, wird die Zeile bzw.
Zeichenfolgevariable ignoriert.

Wird kein Spaltenbereich angegeben, wird der mit @SEARCH-OPTION
eingestellte Spaltenbereich verwendet.

ALL

Die Angabe ist zulässig, aber ohne Bedeutung, da eine Zeile nach dem
Auffinden der ersten Trefferzeichenfolge immer gelöscht wird.

F

Nur die erste Trefferzeile jedes angegebenen Zeilenbereiches wird
gelöscht. Wird F nicht angegeben, so wird jede Zeile jedes Zeilenbereiches
gelöscht, die die Trefferzeichenfolge enthält.

R

Die Angabe ist ohne Bedeutung, da es nicht von der Suchrichtung abhängt,
ob Treffer in einer Arbeitsdateizeile gefunden werden.

NOT

Eine Zeile wird gelöscht, wenn im angegebenen Spaltenbereich einer Zeile
der Suchbegriff nicht gefunden wird (negatives Suchen).

PATTERN

Die im Suchbegriff vorkommenden Musterzeichen werden interpretiert.

search

Suchbegriff, der im Suchbereich aufgefunden werden soll (Details siehe
Abschnitt „Suchen mit @ON“). Die Angabe einer leeren
Zeichenfolge ist nicht erlaubt.

int

Erst das int-te Auftreten des Suchbegriffes in einer Zeile ist als erster Treffer
zu werten. Als Eingaben für int sind alle Werte zwischen 1 und 32768
erlaubt. Der Standardwert für int beträgt 1.

Wird die Anweisung mit [K2] unterbrochen und der EDT-Lauf mit /INFORM-PROGRAM fortgesetzt, so wird die Bearbeitung der Anweisung abgebrochen und die Meldung EDT5501 ausgegeben.

Hinweis

Sollen in einem Bereich alle Leerzeilen (Sätze der Länge 0) gelöscht werden, kann dies mit der Anweisung @ON lines FIND NOT PATTERN '/' DELETE geschehen, wenn '/' das Musterzeichen ist, das für genau ein beliebiges Zeichen steht.

Beispiel

In der gesamten Arbeitsdatei sollen alle Zeilen gelöscht werden, in denen die Zeichenfolge ABC mindestens dreimal auftritt.

Die Zeilen 1, 2 und 3 wurden gelöscht. Anschließend sollen in der gesamten Arbeitsdatei alle Zeilen gelöscht werden, in denen hinter Spalte 7 das Zeichen A auftritt.

Zeile 4 wurde gelöscht. Anschließend sollen in der gesamten Arbeitsdatei alle Zeilen gelöscht werden, in der zwei aufeinander folgende Leerzeichen ’'BLANK''BLANK'’ auftreten.

Zeile 5 wurde gelöscht.