Existe uma resposta para isso sem usar expressão regular? Apenas usando um atalho como CTRL-KD que formata o documento, mas esquece de remover as linhas em branco duplas.
Jan
Respostas:
174
Desde que o Visual Studio 2012 alterou sua sintaxe regex, as respostas originais de Ala se traduzem no seguinte no VS 2012:
Remover linhas em branco únicas
Velho:
^:b*$\n
Novo:
^(?([^\r\n])\s)*\r?$\r?\n
Visual Studio 2013 (graças a BozoJoe e Joe Johnston):
A resposta de BozoJoe, para mim, também funcionou bem no VS2012 (Atualização 4)
BertuPG
5
^ \ s + $ \ n alterado para ^ \ s * $ \ n permitem feeds de linha pura (sem conteúdo).
31515 Joe
4
Como posso automatizar isso, como trabalhar com CTRL + K + D?
ErTR
Isso deve funcionar para seqüências de caracteres ou para código no editor?
Kyle Delaney
114
É muito útil, especialmente se você deseja organizar ou comparar códigos. Obrigado pelas pessoas que responderem a essa pergunta, eu tenho a resposta daqui e gostaria de compartilhá-la com o Stackoverflow:
O Visual Studio tem a capacidade de excluir linhas vazias na operação de substituição usando expressões regulares.
Clique Ctrl- H(substituição rápida)
Marque "Usar expressões regulares"
Em Localizar, especifique ^$\n
Na caixa Substituir, exclua tudo.
Clique em "Substituir tudo"
Todas as linhas vazias serão excluídas.
A expressão regular para linha vazia consiste em
Início da linha ^
Fim da linha $
Quebra de linha \n
Observe que normalmente no Windows um final de linha indicado por 2 caracteres crlf- \rAvanço de linha (CR, ASCII 13, ) Alimentação de linha (LF, ASCII 10 \n).
Um regex para remover linhas em branco que estão / não estão realmente em branco (ou seja, elas possuem / não têm espaços): ^:b*$\n
Para remover linhas duplas: ^:b*\n:b*\nsubstitua por:\n
* para Visual Studio 2013 e superior: *
^\s*$\n
e para linhas duplas:
^(?([^\r\n])\s)*\r?\n(?([^\r\n])\s)*\r?\n
Veja as atualizações de sintaxe de expressão regular para o VS2012 e acima na resposta da @ lennart abaixo
Funciona como um encanto com a limpeza de arquivo XML no Visual Studio 2015. Alguém sabe como criar um atalho para executar isso?
precisa
1
para o Visual Studio 2012 e, acima de verificar a resposta abaixo
Alaa
1
Existe uma maneira de isso funcionar com o formatador automático?
Kyle Delaney
19
No Visual Studio 2013 (Versão 12.0.20623.01), removi as linhas vazias com esta expressão regular. ^\r\nNa tela, você pode ver as linhas correspondentes indicadas pelos quadrados marrons.
Eu também tentei dessa maneira, mas o estúdio visual congelou por alguns minutos e substituiu apenas 1 ocorrência de várias centenas que tenho! lol: -D
BertuPG
17
Testado no VS 2012 para permitir feeds de linha puros.
Isso exclui apenas as linhas em branco selecionadas ou da linha atual até a próxima linha que não estiver em branco. Não é para todo o documento ou projeto.
Jan
1
Tente selecionar tudo antes de executar o comando, e ele funcionará.
Kris Morness 01/10/19
9
Para remover duas ou mais linhas vazias adjacentes com o VS2012, use o seguinte:
Esta resposta é uma repetição para as mesmas respostas acima!
Alaa
2
Instale o CodeMaid e pressione Ctrl+M, Space' to clean up the code. (It formats the code, like Format DocumentCtrl + E, D` também). Você pode limpar mais arquivos no Gerenciador de Soluções.
Ctrl+ K, Ctrl+ Dformata automaticamente o documento atual e isso remove espaço desnecessário no seu código. Isso ajuda a manter seu código legível, se é o que você estava procurando.
Respostas:
Desde que o Visual Studio 2012 alterou sua sintaxe regex, as respostas originais de Ala se traduzem no seguinte no VS 2012:
Remover linhas em branco únicas
Velho:
Novo:
Visual Studio 2013 (graças a BozoJoe e Joe Johnston):
Remova linhas em branco duplas
Velho:
Novo:
Rola direto da sua língua.
Aqui está a planilha de conversão do MSDN.
fonte
É muito útil, especialmente se você deseja organizar ou comparar códigos. Obrigado pelas pessoas que responderem a essa pergunta, eu tenho a resposta daqui e gostaria de compartilhá-la com o Stackoverflow:
O Visual Studio tem a capacidade de excluir linhas vazias na operação de substituição usando expressões regulares.
Clique Ctrl- H(substituição rápida)
Marque "Usar expressões regulares"
Em Localizar, especifique
^$\n
Na caixa Substituir, exclua tudo.
Clique em "Substituir tudo"
Todas as linhas vazias serão excluídas.
A expressão regular para linha vazia consiste em
Início da linha
^
Fim da linha
$
Quebra de linha
\n
Observe que normalmente no Windows um final de linha indicado por 2 caracteres crlf-
\r
Avanço de linha (CR, ASCII 13, ) Alimentação de linha (LF, ASCII 10\n
).Um regex para remover linhas em branco que estão / não estão realmente em branco (ou seja, elas possuem / não têm espaços):
^:b*$\n
Para remover linhas duplas:
^:b*\n:b*\n
substitua por:\n
* para Visual Studio 2013 e superior: *
e para linhas duplas:
Veja as atualizações de sintaxe de expressão regular para o VS2012 e acima na resposta da @ lennart abaixo
fonte
No Visual Studio 2013 (Versão 12.0.20623.01), removi as linhas vazias com esta expressão regular.
^\r\n
Na tela, você pode ver as linhas correspondentes indicadas pelos quadrados marrons.fonte
Testado no VS 2012 para permitir feeds de linha puros.
hth
fonte
Usando o Visual Studio 2017 e superior
no documento atual
use atalho
Edit.DeleteBlankLines
selecione todo o texto e pressione o atalho
fonte
Para remover duas ou mais linhas vazias adjacentes com o VS2012, use o seguinte:
fonte
Estou usando o visual studio 2017, e nenhum dos itens acima funcionou para mim até que tentei
\n\r
Passos:
\n\r
na entrada "Localizar ..."fonte
Para remover linhas duplas: ^: b * \ n: b * \ n substitua por: \ n
Fonte: http://geekswithblogs.net/mnf/archive/2008/03/04/remove-empty-lines-in--text-using-visual-studio.aspx
fonte
Instale o CodeMaid e pressione
Ctrl+M, Space' to clean up the code. (It formats the code, like Format Document
Ctrl + E, D` também). Você pode limpar mais arquivos no Gerenciador de Soluções.fonte
No VS 2012, a cadeia de caracteres regex a ser usada para encontrar e substituir todas as linhas em branco é ^ (? ([^ \ R \ n]) \ s) \ r? \ N
fonte
Ctrl+ K, Ctrl+ Dformata automaticamente o documento atual e isso remove espaço desnecessário no seu código. Isso ajuda a manter seu código legível, se é o que você estava procurando.
fonte