Suchen-und-ersetzen - Hinzufügen, carriage return ODER Newline
Im Fall der folgende string analysiert werden.
ford mustang,10,blue~~?bugatti veyron,13,black
Möchte ich ersetzen die ~~?
mit einem carriage return
Austausch mit \n
nur fügt die Zeichenfolge "\n"
Wie kann das getan werden?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Stellen Sie sicher, dass "Verwendung: Regular expressions" ausgewählt ist in der "Suchen und Ersetzen" - dialog:
Beachten Sie, dass für Visual Studio 2010, das funktioniert nicht in der Visual Studio Productivity Power Tools' "Schnellsuche" - Erweiterung (wie der Juli 2011 update); stattdessen müssen Sie auf die Verwendung des vollständigen Finden und Ersetzen " - dialog (Strg+Umschalt+H oder Bearbeiten --> Suchen und Ersetzen --> Ersetzen in Dateien) und ändern Sie den Bereich auf "Aktuelles Dokument".
\)
wenn reguläre Ausdrücke sind auf...?
Zeichen muss maskiert werden in Regex, weil es bedeutet, dass das Vorherige element ist optional. Also, die richtige "Finden, was" der text ist~~\?
, mit dem Fragezeichen, entkam durch einen umgekehrten Schrägstrich. Die Antwort, die Sie gab, arbeitet auf der Probe text, weil es wird gierig der zweiten tilde und konsumieren es jedoch, wenn eine einzelne tilde gibt es auch in dem text irgendwo, es wird falsch sein durch ein newline als gut.Können Sie auch versuchen
\x0d\x0a
im Feld "Ersetzen mit" mit "regulären Ausdruck Verwenden" Kontrollkästchen aktiviert, um carriage return + line feed mithilfe von Visual Studio Suchen/Ersetzen.Mit
\n
(line feed) ist das gleiche wie\x0a
Wenn Sie "reguläre Ausdrücke Verwenden" - flag dann \n übersetzt werden würde. Aber Bedenken Sie, dass Sie müssten Ihr Suchbegriff zu regexp freundlich. In Ihrem Fall dürfte es entgangen sein, wie diese "\~\~\?" (keine Anführungszeichen).
Wenn Sie möchten, vermeiden Sie den Aufwand der Flucht vor den Sonderzeichen in Ihren such-und Ersatz-string, wenn Sie mit regulären Ausdrücken, führen Sie die folgenden Schritte aus:
Beachten Sie, dass selbst wenn Sie manuell pich Spiele für die erste Suche und ersetzen, Sie können sicher mit "alle ersetzen" für die letzten drei Schritte.
Beispiel
Zum Beispiel, wenn Sie wollen, ersetzen Sie diese:
mit:
Würden Sie die folgenden Ersetzungen:
public IFoo SomeField { get { return this.SomeField; } }
→XOXOXOXO
(regex aus).XOXOXOXO
→XOXOXOXO\nHUHUHUHU
(regex auf).XOXOXOXO
→public IFoo Foo { get { return this.MyFoo; } }
(regex aus).HUHUHUHU
→public IFoo Bar { get { return this.MyBar; } }
(regex aus).Können Sie Mehrzeiliges Suchen und Ersetzen in Visual Studio macro bietet nette GUI für die Aufgabe.