Gibt es eine Antwort darauf ohne Verwendung eines regulären Ausdrucks? Verwenden Sie einfach eine Verknüpfung wie STRG-KD, die das Dokument formatiert, aber vergisst, doppelte Leerzeilen zu entfernen.
Januar
Antworten:
173
Da Visual Studio 2012 seine Regex-Syntax geändert hat, werden die ursprünglichen Antworten von Ala in VS 2012 wie folgt übersetzt:
Entfernen Sie einzelne Leerzeilen
Alt:
^:b*$\n
Neu:
^(?([^\r\n])\s)*\r?$\r?\n
Visual Studio 2013 (danke an BozoJoe und Joe Johnston):
BozoJoes Antwort funktionierte für mich auch in VS2012 gut (Update 4)
BertuPG
5
^ \ s + $ \ n wurde in ^ \ s * $ \ n geändert und ermöglicht (ohne Inhalt) reine Zeilenvorschübe.
Joe Johnston
4
Wie kann ich dies automatisieren, beispielsweise mit STRG + K + D?
ErTR
Soll dies für Zeichenfolgen oder für Code im Editor funktionieren?
Kyle Delaney
114
Es ist sehr nützlich, besonders wenn Sie Codes arrangieren oder vergleichen möchten. Vielen Dank für die Leute, die diese Frage beantworten. Ich habe die Antwort von hier Vielen und möchte sie mit Stackoverflow teilen:
Visual Studio kann leere Zeilen beim Ersetzen mit regulären Ausdrücken löschen.
Klicken Sie auf Ctrl- H(schnelles Ersetzen)
Kreuzen Sie "Reguläre Ausdrücke verwenden" an
In Suchen angeben ^$\n
Im Feld Ersetzen löschen Sie alles.
Klicken Sie auf "Alle ersetzen".
Alle Leerzeilen werden gelöscht.
Regulärer Ausdruck für leere Zeile besteht aus
Zeilenanfang ^
Ende der Linie $
Zeilenumbruch \n
Beachten Sie, dass normalerweise in Windows ein Zeilenende durch 2 Zeichen angezeigt wird crlf- Zeilenvorschub (CR, ASCII 13, \r) Zeilenvorschub (LF, ASCII 10, \n).
Ein regulärer Ausdruck zum Entfernen von Leerzeilen, die nicht wirklich leer sind (dh keine Leerzeichen enthalten): ^:b*$\n
So entfernen Sie doppelte Linien: ^:b*\n:b*\nErsetzen Sie durch:\n
* für Visual Studio 2013 und höher: *
^\s*$\n
und für doppelte Zeilen:
^(?([^\r\n])\s)*\r?\n(?([^\r\n])\s)*\r?\n
Siehe die Syntaxaktualisierungen für reguläre Ausdrücke für VS2012 und höher in der Antwort von @ lennart unten
Funktioniert wie ein Zauber beim Bereinigen von XML-Dateien in Visual Studio 2015. Weiß jemand, wie man eine Verknüpfung erstellt, um dies auszuführen?
Leszek P
1
für Visual Studio 2012 und höher überprüfen Sie die Antwort unten
Alaa
1
Gibt es eine Möglichkeit, mit dem automatischen Formatierer zu arbeiten?
Kyle Delaney
19
In Visual Studio 2013 (Version 12.0.20623.01) habe ich mit diesem regulären Ausdruck leere Zeilen entfernt. ^\r\nAuf dem Bildschirm sehen Sie die übereinstimmenden Zeilen, die durch die braunen Quadrate angezeigt werden.
Ich habe es auch so versucht, aber Visual Studio blieb einige Minuten eingefroren und ersetzte dann nur 1 Vorkommen von mehreren hundert, die ich habe! lol :-D
BertuPG
17
In VS 2012 getestet, um reine Zeilenvorschübe zu ermöglichen.
Dadurch werden nur ausgewählte Leerzeilen oder von der aktuellen Zeile bis zur nächsten nicht leeren Zeile gelöscht. Es ist nicht für das gesamte Dokument oder Projekt.
Januar
1
Versuchen Sie, alle auszuwählen, bevor Sie den Befehl ausführen. Dann funktioniert es.
Kris Morness
9
Verwenden Sie Folgendes, um zwei oder mehr benachbarte leere Zeilen mit VS2012 zu entfernen:
Diese Antwort ist eine Wiederholung der gleichen Antworten wie oben!
Alaa
2
Installieren Sie CodeMaid und drücken Sie auchCtrl+M, Space' to clean up the code. (It formats the code, like Format Document Strg + E, D`. Sie können weitere Dateien im Projektmappen-Explorer bereinigen.
Ctrl+ K, Ctrl+ Dformatiert das aktuelle Dokument automatisch und entfernt so unnötigen Speicherplatz in Ihrem Code. Es hilft, Ihren Code lesbar zu halten, wenn Sie danach suchen.
Antworten:
Da Visual Studio 2012 seine Regex-Syntax geändert hat, werden die ursprünglichen Antworten von Ala in VS 2012 wie folgt übersetzt:
Entfernen Sie einzelne Leerzeilen
Alt:
Neu:
Visual Studio 2013 (danke an BozoJoe und Joe Johnston):
Doppelte Leerzeilen entfernen
Alt:
Neu:
Rollt direkt von deiner Zunge.
Hier ist das Umrechnungsblatt von MSDN.
quelle
Es ist sehr nützlich, besonders wenn Sie Codes arrangieren oder vergleichen möchten. Vielen Dank für die Leute, die diese Frage beantworten. Ich habe die Antwort von hier Vielen und möchte sie mit Stackoverflow teilen:
Visual Studio kann leere Zeilen beim Ersetzen mit regulären Ausdrücken löschen.
Klicken Sie auf Ctrl- H(schnelles Ersetzen)
Kreuzen Sie "Reguläre Ausdrücke verwenden" an
In Suchen angeben
^$\n
Im Feld Ersetzen löschen Sie alles.
Klicken Sie auf "Alle ersetzen".
Alle Leerzeilen werden gelöscht.
Regulärer Ausdruck für leere Zeile besteht aus
Zeilenanfang
^
Ende der Linie
$
Zeilenumbruch
\n
Beachten Sie, dass normalerweise in Windows ein Zeilenende durch 2 Zeichen angezeigt wird crlf- Zeilenvorschub (CR, ASCII 13,
\r
) Zeilenvorschub (LF, ASCII 10,\n
).Ein regulärer Ausdruck zum Entfernen von Leerzeilen, die nicht wirklich leer sind (dh keine Leerzeichen enthalten):
^:b*$\n
So entfernen Sie doppelte Linien:
^:b*\n:b*\n
Ersetzen Sie durch:\n
* für Visual Studio 2013 und höher: *
und für doppelte Zeilen:
Siehe die Syntaxaktualisierungen für reguläre Ausdrücke für VS2012 und höher in der Antwort von @ lennart unten
quelle
In Visual Studio 2013 (Version 12.0.20623.01) habe ich mit diesem regulären Ausdruck leere Zeilen entfernt.
^\r\n
Auf dem Bildschirm sehen Sie die übereinstimmenden Zeilen, die durch die braunen Quadrate angezeigt werden.quelle
In VS 2012 getestet, um reine Zeilenvorschübe zu ermöglichen.
hth
quelle
Verwenden von Visual Studio 2017 und höher
im aktuellen Dokument
Verwenden Sie die Verknüpfung
Edit.DeleteBlankLines
Wählen Sie den gesamten Text aus und klicken Sie auf die Verknüpfung
quelle
Verwenden Sie Folgendes, um zwei oder mehr benachbarte leere Zeilen mit VS2012 zu entfernen:
quelle
Ich benutze Visual Studio 2017, keines der oben genannten hat für mich funktioniert, bis ich es versucht habe
\n\r
Schritte:
\n\r
Sie den Eingang "Suchen ..." einquelle
So entfernen Sie doppelte Zeilen: ^: b * \ n: b * \ n ersetzen durch: \ n
Quelle: http://geekswithblogs.net/mnf/archive/2008/03/04/remove-empty-lines-in--text-using-visual-studio.aspx
quelle
Installieren Sie CodeMaid und drücken Sie auch
Ctrl+M, Space' to clean up the code. (It formats the code, like Format Document
Strg + E, D`. Sie können weitere Dateien im Projektmappen-Explorer bereinigen.quelle
In VS 2012 lautet die Regex-Zeichenfolge zum Suchen und Ersetzen aller Leerzeilen ^ (? ([^ \ R \ n]) \ s) \ r? \ N.
quelle
Ctrl+ K, Ctrl+ Dformatiert das aktuelle Dokument automatisch und entfernt so unnötigen Speicherplatz in Ihrem Code. Es hilft, Ihren Code lesbar zu halten, wenn Sie danach suchen.
quelle