Mac OS X-Tool zum Suchen und Ersetzen mit Unterstützung für reguläre Ausdrücke

9

Ich suche ein auf regulären Ausdrücken basierendes Such- / Ersetzungs-GUI-Tool, das mehrere Dateien / Unterverzeichnisse verarbeiten kann, ähnlich wie grepWin, aber für Mac OS X.

PS. Ich kenne grep und brauche keinen Editor, nur ein eigenständiges Tool.

user187291
quelle
Komodo Edit ( activestate.com/komodo-edit ) eine "Suchen / Ersetzen in Dateien" -Funktion. Es ist ein kostenloser Editor für Mac, Windows und Linux.
Jsherk

Antworten:

3

Oh, ich habe auch gerade Folgendes gefunden:

http://www.dprog.ch/home/products/find_and_replace_it/

Über Suchen und Ersetzen!

Ein leistungsstarkes Such- und Ersetzungsprogramm. Es ermöglicht die Durchführung sehr komplexer Batch-Ersetzungen in Textdateien beliebiger Größe. Es unterstützt die Syntax regulärer Ausdrücke und Dutzende von Codierungen. Es verfügt über Skriptfunktionen, mit denen der Ersatztext für jede gefundene Zeichenfolge im laufenden Betrieb geändert werden kann. Es übernimmt sogar die Stapelverarbeitung der Codierung von Dateien sowie der Arten von Zeilenende.

Hier sind einige wichtige Funktionen von Find & Replace It!:

  • Suchen und ersetzen Sie mehrere Dateien gleichzeitig
  • Unterstützt reguläre Ausdrücke
  • Unterstützt viele Textcodierungen
  • Bietet einen regulären Ausdruckseditor
  • Bietet eine Vorschau zum Suchen und Ersetzen
  • Bietet eine Skriptschnittstelle, mit der Ersatztext im laufenden Betrieb umgewandelt werden kann
  • Viele weitere Funktionen

Es wurde von dProg - Philippe Docourt entwickelt . Ich habe es noch nie benutzt , also nimm diese Empfehlung mit einem Körnchen Salz!

Josh
quelle
12

Sie suchen wahrscheinlich nach einer GUI-App, aber ich kann einen Terminalbefehl empfehlen. Perl kann Inline-Ersetzungen durchführen:

find . -type f -exec perl -p -i -e "s/SEARCH_REGEX/REPLACEMENT/g" {} \;

Dadurch werden alle Dateien im aktuellen Verzeichnis gefunden und basierend auf dem bereitgestellten regulären Ausdruck ersetzt. Wenn Sie Verzeichnisse wechseln müssen, können Sie auf einfache Weise Folgendes eingeben: cd (Stellen Sie sicher, dass danach ein Leerzeichen vorhanden ist) und dann einen Ordner aus dem Finder auf das Terminalfenster ziehen und dort ablegen. Drücken Sie die Eingabetaste und Sie befinden sich in dem gewünschten Ordner. Führen Sie dann den obigen Perl-Befehl aus.

Wenn Perl vor dem Ersetzen Sicherungskopien erstellen soll, führen Sie Folgendes aus:

find . -type f -exec perl -p -i.bak -e "s/SEARCH_REGEX/REPLACEMENT/g" {} \;
Josh
quelle
4
Jedes Mal, wenn ich Perl in einer SO- oder SU-Antwort vorschlage, werde ich ohne Antwort herabgestimmt. Wie es hier anscheinend herumgeht. :)
Ian C.
@ Ian: Vielleicht hätte ich die Ruby-Syntax verwenden sollen? ;-)
Josh
2
Stellen Sie sich Superuser vor, die reguläre Perl-Ausdrücke verwenden, das ist verrückt
mindless.panda
1

Ich verstehe, dass Sie keinen vollständigen Editor benötigen, aber oft finden Sie die besten Tools in einem. TextMate bietet volle Unterstützung für reguläre Ausdrücke und verarbeitet Dateien und Verzeichnisse sehr gut. Eine andere, die ich nicht ausprobiert habe, von der ich aber gute Dinge gehört habe, ist TextWrangler .

Josh K.
quelle
danke, ich benutze bereits Textmate und es ist fantastisch, aber nicht als Such-Ersetzungs-Tool. "Warum gibt es keinen verdammten Stoppknopf? !!" ( blog.johnjosephbachir.org/2007/10/01/… );))
user187291