185 votes

Supprimer les lignes vides dans un texte à l'aide de Visual Studio

Comment supprimer les lignes vides dans Visual Studio ?

0 votes

3 votes

Existe-t-il une réponse à cette question sans utiliser d'expression régulière ? Tout simplement en utilisant un raccourci comme CTRL-K-D qui formate le document mais oublie de supprimer les doubles lignes vides.

201voto

Lennart Points 1962

Depuis que Visual Studio 2012 a changé sa syntaxe regex, les réponses originales d'Ala se traduisent par ce qui suit dans VS 2012 :

Suppression des lignes vides

Vieux :

^:b*$\n

Nouveau :

^(?([^\r\n])\s)*\r?$\r?\n

Visual Studio 2013 (merci à BozoJoe et Joe Johnston) :

^\s*$\n

Supprimer les doubles lignes vides

Vieux :

^:b*\n:b*\n

Nouveau :

^(?([^\r\n])\s)*\r?\n(?([^\r\n])\s)*\r?\n

Ça roule directement sur la langue.

Ici est la feuille de conversion de MSDN.

1 votes

La réponse de BozoJoe, pour moi, a bien fonctionné dans VS2012 également (Mise à jour 4)

6 votes

^ \s +$ \n changé en ^ \s *$ \n permettre des flux de lignes pures (sans contenu).

4 votes

Comment puis-je automatiser cela, comme si je travaillais avec CTRL+K+D ?

151voto

Ala Points 1494

C'est très utile surtout si vous voulez arranger ou comparer des codes, merci aux personnes qui ont répondu à cette question, j'ai obtenu la réponse de ici et souhaite le partager avec Stackoverflow :

Visual Studio a la possibilité de supprimer les lignes vides dans l'opération de remplacement en utilisant des expressions régulières.

  • Cliquez sur Ctrl - H (remplacement rapide)

  • Cochez "Utiliser les expressions régulières".

  • Dans Rechercher spécifier ^$\n

  • Dans la case Remplacer, supprimez tout.

  • Cliquez sur "Remplacer tout".

Toutes les lignes vides seront supprimées.

L'expression régulière pour une ligne vide consiste en

Début de la ligne ^

Fin de la ligne $

Saut de ligne \n

Notez que normalement dans Windows une fin de ligne est indiquée par 2 caractères crlf - Retour chariot (CR, ASCII 13.) \r ) Saut de ligne (LF, ASCII 10, \n ).

Une regex pour enlever les lignes vides qui sont/ne sont pas vraiment vides (c'est-à-dire qu'ils comportent ou non des espaces) : ^:b*$\n

Pour supprimer les doubles lignes : ^:b*\n:b*\n remplacer par : \n

* pour Visual Studio 2013 et plus : *

^\s*$\n

et pour les lignes doubles :

^(?([^\r\n])\s)*\r?\n(?([^\r\n])\s)*\r?\n

Voir les mises à jour de la syntaxe des expressions régulières pour VS2012 et au-delà dans la réponse de @lennart ci-dessous

0 votes

Fonctionne comme un charme avec le nettoyage d'un fichier XML dans Visual Studio 2015. Quelqu'un sait comment créer un raccourci pour l'exécuter ?

1 votes

Pour Visual Studio 2012 et plus, vérifiez la réponse ci-dessous

1 votes

Y a-t-il un moyen pour que cela fonctionne avec le formateur automatique ?

19voto

Dans Visual Studio 2013 (Version 12.0.20623.01) j'ai supprimé les lignes vides avec cette expression régulière ^\r\n Dans l'écran, vous pouvez voir les lignes appariées indiquées par les carrés bruns.

Visual Studio 2013 replace empty lines

0 votes

J'ai également essayé cette méthode, mais Visual Studio est resté figé pendant quelques minutes et n'a remplacé qu'une seule occurrence sur plusieurs centaines que j'ai ! lol :-D

9voto

pbz Points 2468

Pour supprimer deux ou plusieurs lignes vides adjacentes avec VS2012, utilisez ceci :

^(?([^\r\n])\s)*\r?$\r?\n^(?([^\r\n])\s)*\r?$\r?\n

0 votes

Je cherchais une solution pour remplacer deux lignes vides par une seule. Cela fonctionne pour moi. Merci !

4voto

olegansoft Points 21

Pour supprimer les doubles lignes : ^:b* \n :b* \n remplacer par : \n

Source : http://geekswithblogs.net/mnf/archive/2008/03/04/remove-empty-lines-in--text-using-visual-studio.aspx

1 votes

Cette réponse est une répétition des mêmes réponses ci-dessus !

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X