Gibt es ein Windows-Dienstprogramm, das mir mehrere programmatische find / ersetzt auf Text, dass ich cut & paste in es wird lassen Sie sich?

StackOverflow https://stackoverflow.com/questions/3049080

Frage

Ich habe einige C # -Code geerbt, die etwa tausend Zeilen Quelle enthält, dass ich ändern müssen, es aus dieser Transformation:

newDataRow["to_dir"] = comboBox108.Text;

Um dies zu:

assetAttributes.Add("to_dir", comboBox108.Text);

Die Linien treten an verschiedenen Stellen in der Anwendung in Gruppen von 40 oder 50 jede Zeile von Hand in Visual Studio 2008 ändern kann getan werden, aber es ist arbeitsintensiv und fehleranfällig.

Gibt es ein Windows-Dienstprogramm gibt, die lassen mich geschnitten und Gruppen von Code in sie einfügen und dann eine Art von reg-ex Ausdruck laufen die einzelnen Linien one-by-one zu verwandeln? Ich würde auch bereit sein, eine Art von VS 2008 zu verwenden Add-In, den gleichen Satz von reg-ex Operationen gegen eine Auswahl von Code ausgeführt wird.

Vielen Dank im Voraus.

War es hilfreich?

Lösung

Wenn Sie einfach einen Texteditor möchten, können dies tun, möchten Sie vielleicht PSPad versuchen -. Das Suchen / Ersetzen ermöglicht regulären Ausdruck useage

Andere Tipps

Obwohl es nicht eine große Erfahrung, können Sie den VS2008 verwenden eingebauten Suche & ersetzen, dies zu tun.

Beachten Sie, dass es seine eigene regex Syntax hat. Um dies zu tun, gehen Sie auf Bearbeiten | Suchen & Ersetzen | Ersetzen in Dateien. Erweitern Sie dann „Suchen Optionen“ und die Verwendung von regulären Ausdrücken aus.

Versuchen Sie, diese - Test und fix ... Für Ihren Suchbegriff, Verwendung
 newDataRow\[{"[."]*"}\] = {[^;]*} und ersetzen mit  assetAttributes.Add\("\1", \2\);

\ 1 und \ 2 Identifikatoren sind die ersten und zweiten Gruppen (umgeben von {}), die gefunden wurden. treffen auf die Pfeile neben den Suchbegriffen für ein Menü, das botom Option auswählen, um Hilfe zu gehen.

In Visual Studio, Suchen und Ersetzen können Sie mit regulären Ausdrücken ersetzen. Im Suchen und Ersetzen-Dialog unter Suche Optionen gibt es eine Checkbox ‚Use‘ mit regulären Ausdrücken in ihm. Verwenden Sie die Pfeile neben ‚Suchen nach‘ und ‚Ersetzen durch‘, um zu erfahren Visual Studio etwas andere Syntax.

Mit dem regulären Ausdruck suchen und ersetzen, können Sie die Suche nach:

newDataRow\["([a-zA-Z_]+)"\] = comboBox([0-9]+).Text;

und ersetzen Sie mit

assetAttributes.Add("\1", comboBox\2.Text);

, die den Trick tun sollen: o)

Windows-Grep ist groß, und sollte genau das tun, was Sie wollen, und mehr:

http://www.wingrep.com/

Meine Wahl des Werkzeugs in dieser Angelegenheit würde wahrscheinlich Notepad ++ (Suchen / Finden in Finds - auch nicht ersetzt) ??sein. Unterstützt regexps.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top