FIND (TSB)
FIND (TSB) | |
Syntax: | FIND["]<string> |
Parameter | |
string: gesuchte Zeichenfolge | |
Einordnung | |
Typ: | Kommando |
Kontext: | Programmierhilfe |
Aufgabe: | Suchen von Programmstellen |
Abkürzung: | fiN |
Token: | $64 $4d (100 77) |
Verwandte Befehle | |
PAGE - OPTION - DELAY |
Dieser Artikel beschreibt das TSB-Schlüsselwort FIND (TSB).
Das entsprechende Simons'-Basic-Schlüsselwort lautet ebenfalls FIND.
Typ: Kommando Syntax: FIND["]<string>
FIND dient dazu, in einem im Speicher befindlichen Basic-Programm alle Zeilen zu finden, die den nach FIND eingegebenen Text enthalten. FIND ist für den Direktmodus gedacht. Wenn man es im Programm anwendet, endet man nach der Ausgabe dennoch im Direktmodus.
Bei der Eingabe des Suchwortes gibt es zwei Alternativen. Bei beiden wird die FIND-Eingabezeile vom Interpreter untersucht und mit dem Programm-Code verglichen. Dabei werden einerseits alle Zeichenfolgen, die auch TSB-Schlüsselwörter darstellen, in Tokens umgewandelt. Das bedeutet, dass im Verlauf der Suche tatsächlich nur die Basic-Zeilen als Suchergebnis angezeigt werden, die auch diese bereits in Token verwandelten Schlüsselwörter enthalten. Andererseits kann man FIND so aufrufen, dass buchstabengetreu nach dem gesucht wird, was man als Suchwort eingegeben hat. Das bedeutet, dass Schlüsselwörter nicht in Token umgewandelt und, auch wenn sie Bestandteil eines Strings sind, dennoch im Suchergebnis angezeigt werden.
Ein Beispiel: Sucht man nach dem Schlüsselwort INT, zeigt der Befehl nach Eingabe von FINDINT
alle Vorkommnisse von INT an. Käme im Programm der
String "HINTERGRUND" vor, in dem das Schlüsselwort INT ja versteckt ist, würde diese Stelle nicht als Ergebnis angezeigt. Um auch bei solchen Suchanfragen
erfolgreich zu sein, modifiziert man die Anfrage ein wenig: FIND"INT
(ohne abschließendes Anführungszeichen, denn das würde mitgesucht - das einleitende Quote wird nicht gesucht).
FIND gibt die Zeilennummern der Fundstellen im Tabulatorabstand aus, also vier Fundstellen-Zeilennummern pro Bildschirmzeile.
Beachten: Ein Leerzeichen zwischen FIND und dem eigentlichen Suchbegriff ist bei der ersten Eingabealternative signifikant und wird mitgesucht. Leerzeichen hier nur verwenden, wenn sie auch gesucht werden.
Beispiele[Bearbeiten | Quelltext bearbeiten]
FINDwasser
- durchsucht das Programm nach der Zeichenfolge "wasser". "wasser" enthält kein Schlüsselwort und wird - sofern vorhanden - in jedem Fall angezeigt.
FIND oder FIND"
- listet ausnahmslos alle Programmzeilen
FINDpoke
- zeigt die Stellen an, die den Basic-Befehl POKE enthalten
FIND"poke
- zeigt die Stellen an, die die Buchstabenfolge POKE enthalten, nicht jedoch tokenisierte Befehlswörter
$$ | %% | AT | CALL | CENTER | CHECK | COLD | COLOR | COPY | CLS | CSET | D! | D!PEEK | D!POKE | DIR | DISK | DISPLAY | DIV | DO | DO NULL | DRAW TO | DUMP | DUP | ELSE | ERROR | EXEC | FETCH | FIND | GRAPHICS | INSERT | INST | JOY | KEY | KEYGET | LIN | MAP | MEMCLR | MEMCONT | MEMDEF | MEMLEN | MEMLOAD | MEMOR | MEMPEEK | MEMPOS | MEMREAD | MEMRESTORE | MEMSAVE | MERGE | MOB ON/OFF | MOBCOL | MOD | MOVE | MULTI | NRM | ON ERROR | ON KEY | OPTION | OUT | PAGE | PAINT | PAUSE | PLACE | RENUMBER | RESUME | RETRACE | SCRLD | SCRSV | SOUND | TEXT | TRACE | USE | WAVE | X!