![]() |
Suchen, Ersetzen und ModifizierenIn diesem Abschnitt werden die folgenden Funktionalitäten von Ed42 behandelt:
Ersetzen im aktuellen Text (Erreichbar über Suchen|Ersetzen bzw. Strg-R): Es gelten die gleichen Ausführungen wie für das Suchen im aktuellen Text. Dateiübergreifende Suche (Erreichbar über Suchen|Suchen in Dateien bzw. Umsch-Strg-F): Es gelten die gleichen Ausführungen wie für das Suchen im aktuellen Text. Zusätzlich kann spezifiziert werden, ob die Dateien des aktuellen Projekts durchsucht werden sollen, die aktuell geladenen Dateien oder ob ein spezielles Verzeichnis (ggf. mit Unterverzeichnissen) durchsucht werden soll. Wird ein spezielles Verzeichnis durchsucht, können die betroffenen Dateien über eine Dateimaske eingeschränkt werden, die mehrere Dateispezifikationen (getrennt durch Leerzeichen) enthalten kann (also z.B. '*pas *.c'). Zusätzlich kann angegeben werden, ob die (über die Projektoptionen, Registerkarte Pfade konfigurierbaren) Includeverzeichnisse mit in die Suche einbezogen und ob Verzeichnisse rekursiv durchsucht werden sollen. Es ist zu beachten, dass bei dateiübergreifenden Operationen nur Dateien berücksichtigt werden, deren Extensions nicht in der entsprechenden Ausschlußliste der Projektoptionen (Registerkarte Extensions) eingetragen sind. Das Ergebnis einer dateiübergreifenden Suche wird in einem Ergebnisdialog zusammengefaßt in dem die einzelnen Vorkommen aufgelistet sind. Über einen Doppelklick auf ein Element der Liste kann zu dem entsprechenden Vorkommen gewechselt werden (ggf. wird zuvor der zugehörige Text automatisch geladen). Über die Projektoptionen (Registerkarte Suchen/Ersetzen) kann eingestellt werden,
Suchen von korrespondierenden Klammern (Erreichbar über Suchen|Klammer suchen bzw. Strg-B): Über dieses Feature kann eine Klammer gesucht werden, die zu der Klammer an der aktuellen Cursorposition korrespondiert. Ist eine solche korrespondierende Klammer vorhanden, wechselt der Cursor zu dieser Klammer. Die von diesem Feature zu behandelnden Klammerformen sind sprachabhängig. Vgl. Abschnitt Sprachunterstützung. Modifikation von Dateien (Erreichbar über Datei|Datei modifizieren): Dieses Feature erlaubt es, in einer (Binär-)Datei eine Zeichenfolge durch eine andere zu ersetzen oder in regelmäßigen Abständen eine Zeichenkette einzufügen. Ein zu suchender/ersetzender/einzufügender String kann Ausdrücke der Form #NNN enthalten (vgl. Suchen im aktuellen Text). Reguläre Ausdrücke:
Zu suchende Zeichenfolgen können auf expliziten Wunsch (vgl. die entsprechenden
Optionen in den Menüs zur (dateiübergreifenden)
Suche
bzw. zum (dateiübergreifenden)
Ersetzen
reguläre Ausdrücke verwendet werden. Der implementierte Mechanismus
ist nicht in der Lage zeilenübergreifend zu arbeiten; so kann
z.B. nicht explizit nach einem Zeilenende gesucht werden. Die folgende
Tabelle faßt die Syntax für reguläre Ausdrücke zusammen.
Die sonst üblichen Markierungen '^' und '$' zum Suchen am Zeilenanfang bzw. Zeilenende entfallen. Diese Suchoptionen können direkt über die Suchen-/Ersetzendialoge eingestellt werden. Suchen und Ersetzen mit regulären Ausdrücken: Wird beim Ersetzen in Texten bzw. Dateien für die Suche ein regulärer Ausdruck verwendet, können die Textstücke, die mit '(' und ')' geklammerten Teilausdrücken übereinstimmen, in die ersetzende Zeichenkette integriert werden. Beispiel: Gesucht wird der reguläre Ausdruck 'a(.*)b'. Alle Textstücke, die mit diesem Ausdruck übereinstimmen, sollen durch ein Textstück der Form 'aXStefanb', wobei X das Textstück bezeichnet, das mit dem Teilausdruck (.*) übereinstimmt. Um das Textstück 'aHallob' durch 'aHalloStefan' zu ersetzen, muß die ersetzende Zeichenkette den Wert 'a\1Stefanb' haben, d.h. '\1' wird durch das Textstück ersetzt, das mit dem Teilausdruck (.*) übereinstimmt. Generell kann die Zeichenkette, die mit dem i-ten Teilausdruck übereinstimmt, über den Ausdruck '\i' in die ersetzende Zeichenkette integriert werden. Es können nur Teilausdrücke der obersten Ebene berücksichtigt werden, d.h. Teilausdrücke, die in anderen Teilausdrücken enthalten sind, können nicht für sich allein berücksichtigt werden. Soll die ersetzende Zeichenkette das Zeichen '\' enthalten, muß dies über den Ausdruck '\\' geschehen. |
Last Change: 27.10.2001
© Copyright by Stefan Brüning. All rights reserved |