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 5) - Kopieren der Zeilen mit dem Suchbegriff

&pagelevel(3)&pagelevel

Mit diesem Format der @ON-Anweisung werden die Trefferzeilen der zu durchsuchenden Zeilenbereiche in die angegebene Arbeitsdatei kopiert.

Operation

Operanden

F-Modus, L-Modus

@ON

lines[,...] [:cols[:] ] FIND [ALL] [F] [R] [NOT] [PATTERN]

search [,int] [COPY [TO] ] (procnr) [KEEP] [OLD]

lines

cols

Einer oder mehrere Zeilenbereiche, in denen gesucht werden soll.

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 ignoriert.

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

ALL

Die Angabe ist zulässig, aber ohne Bedeutung, da ein Satz nur einmal
kopiert wird.

F

Es wird nur die erste Trefferzeile jedes angegebenen Zeilenbereiches
kopiert. Ist F nicht angegeben, werden alle Trefferzeilen aus jedem
angegebenen Zeilenbereich kopiert.

R

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

NOT

Ein Treffer wird erkannt, wenn im angegebenen Spaltenbereich einer Zeile
der Suchbegriff nicht enthalten ist (negatives Suchen).

PATTERN

search

Die im Suchbegriff vorkommenden Musterzeichen werden interpretiert.

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.

procnr

Nummer der Arbeitsdatei (0..22), in die die Trefferzeilen kopiert werden.

Eine aktive oder die aktuelle Arbeitsdatei darf nicht angegeben werden. Ist
OLD nicht angegeben und werden gleichzeitig Treffersätze gefunden, so
wird die Ziel-Arbeitsdatei vor dem Kopieren vollständig gelöscht (siehe
@DELETE, Format 2). Werden keine Treffersätze gefunden, bleibt der
Inhalt der Ziel-Arbeitsdatei unverändert.

KEEP

Die Zeilennummern der Treffersätze werden beim Kopieren beibehalten.
Wird KEEP nicht angegeben, erstellt der EDT die Ziel-Arbeitsdatei ab der
aktuellen Zeilennummer, die für jeden kopierten Treffersatz um die aktuelle
Schrittweite erhöht wird.

OLD

Der Inhalt der Ziel-Arbeitsdatei wird vor dem Kopieren nicht gelöscht.
Eventuell existierende Zeilen mit derselben Zeilennummer in der Ziel-Arbeitsdatei
werden überschrieben. Wird OLD nicht angegeben und werden gleichzeitig
Treffersätze gefunden, so wird die Ziel-Arbeitsdatei vor dem Kopieren
vollständig gelöscht (siehe @DELETE, Format 2).

Hat die angegebene Arbeitsdatei einen Zeichensatz, dann werden die zu kopierenden Zeilen in den Zeichensatz dieser Arbeitsdatei konvertiert. Werden dabei Zeichen gefunden, die im Zeichensatz der Arbeitsdatei nicht darstellbar sind, werden diese durch ein Ersatzzeichen ersetzt, sofern ein solches spezifiziert ist (siehe @PAR SUBSTITUTION-CHARACTER), andernfalls wird die @ON-Anweisung abgewiesen und die Fehlermeldung EDT5453 ausgegeben.

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.

Beispiel

Sätze mit dem Suchbegriff STR. sollen in die Arbeitsdatei 5 kopiert werden. Anschließend soll in die Arbeitsdatei 5 verzweigt werden.

Es wird in die Arbeitsdatei 1 verzweigt.

Alle Sätze der Personen, deren Vornamen mit M beginnen und mit A enden werden in die Arbeitsdatei 6 kopiert. Anschließend wird in die Arbeitsdatei 6 verzweigt.