How to remove empty lines in Visual Studio?
-
[For Visual Studio Code](https://stackoverflow.com/a/50042582/6597375) – Deepu Reghunath Feb 19 '19 at 12:05
-
3Is there an answer for this without using regular expression? Just by using a shortcut like CTRL-K-D which formats the document but forgets to remove double blank lines. – Jan Apr 05 '19 at 10:43
-
How can we do this automatically in vs code when we format document or as we type? similar to what code maid does on visual studio? – Kepol Jul 27 '22 at 07:34
13 Answers
Since Visual Studio 2012 changed its regex syntax, the original answers by Ala translate into the following in VS 2012:
Remove single blank lines
Old:
^:b*$\n
New:
^(?([^\r\n])\s)*\r?$\r?\n
Visual Studio 2013 (thanks to BozoJoe and Joe Johnston):
^\s*$\n
Remove double blank lines
Old:
^:b*\n:b*\n
New:
^(?([^\r\n])\s)*\r?\n(?([^\r\n])\s)*\r?\n
Rolls right off your tongue.
Here is the conversion sheet from MSDN.
-
1
-
6^\s+$\n changed to ^\s*$\n allow for (no content) pure line feeds. – Joe Johnston Jan 06 '15 at 16:15
-
4
-
-
@KyleDelaney Primarily for code in the editor. I don't know if the syntax is the same for strings (if you mean the Regex.* classes) – Lennart Apr 07 '17 at 07:06
-
-
It's very useful especially if you want to arrange or compare codes, thanks to the people who answer this question, I've got the answer from here and would like to share it with Stackoverflow:
Visual Studio (Visual Studio Code) has the ability to delete empty lines in replace operation using regular expressions.
Click Ctrl-H (quick replace)
Tick "Use Regular Expressions"
In Find specify
^$\n
In Replace box delete everything.
Click "Replace All"
All empty lines will be deleted.
Regular expression for empty line consists of
Beginning of line ^
End of line $
Line break \n
Note that normally in Windows an end of line indicated by 2 characters crlf - Carriage Return (CR, ASCII 13, \r
) Line Feed (LF, ASCII 10, \n
).
A regex to remove blank lines that are/aren't really blank (i.e. they do/don't have spaces): ^:b*$\n
To remove double lines: ^:b*\n:b*\n
replace with: \n
*** for Visual Studio 2013 and above:***
^\s*$\n
and for double lines:
^(?([^\r\n])\s)*\r?\n(?([^\r\n])\s)*\r?\n
See the regular expression syntax updates for VS2012 and above in @lennart's answer below

- 8,904
- 16
- 57
- 84
-
Works like a charm with cleaning XML file in Visual Studio 2015. Anyone know how to make a shortcut to execute this? – Leszek P Mar 04 '16 at 10:51
-
1
-
1
Using Visual Studio 2017 and above
in Current Document
use shortcut
- Open Tools > Options or press Alt + T + O
- Under Environment tab > Keyboard
- Search for "DeleteBlank" and select
Edit.DeleteBlankLines
- Add a new shortcut for example Ctrl+D,Ctrl+E
- Assign > OK
select all text and hit the shortcut

- 2,818
- 4
- 30
- 44
-
1This only delete selected blank line(s) or from current line till the next non-blank line. It's not for the whole document or project. – Jan Apr 05 '19 at 10:41
-
3
-
1
Tested in VS 2012 to allow for pure line feeds.
^\s*$\n
hth

- 2,794
- 2
- 31
- 54
-
2this works for me in VS 2015, the accepted answer did not unfortunately – EdwardM Apr 13 '16 at 22:09
-
-
2
-
2
-
Works in VS2022 Note: a trailing space was treated as part of the pattern. be sure to trim – Joe Johnston Jul 05 '22 at 14:26
In Visual Studio 2013 (Version 12.0.20623.01) i removed empty lines with this regular expression ^\r\n
In the screen you can see the matched lines indicated by the brown squares.

- 5,527
- 7
- 48
- 77
-
I also tried such way, but visual studio stuck frozen for some minutes and then replaced only 1 occurrence of several hundred I have! lol :-D – BertuPG Oct 28 '14 at 12:12
I'm using visual studio 2017, non of the above worked for me until I tried \n\r
Steps:
- Ctrl + H (opens find and replace)
- Select use regular expression (Alt + E)
- Enter
\n\r
into the "Find..." input - Press replace

- 2,841
- 9
- 45
- 71
VS 2022 and 2019
- Open the replace box: Ctrl + H
- Turn on regular expressions: Alt + E
- Find:
^\s*$\n
- Replace: (leave empty)
- Replace All: Alt + A
- Turn off regular expression: Alt + E
- Hide the replace box: Esc
- Format the document: Ctrl + K and then Ctrl + D

- 11,796
- 4
- 56
- 54
-
-
Find: `^\s$` is sufficient as this translates into, only whitespace characters between the beginning and the end of the line. – fduff Jun 02 '22 at 08:23
-
It works with Visual Studio 2022 Enterprise edition, I applied with 41.000 lines of code of DBContext. Nice answer! – Vy Do May 07 '23 at 11:03
To remove two or more adjacent empty rows with VS2012 use this:
^(?([^\r\n])\s)*\r?$\r?\n^(?([^\r\n])\s)*\r?$\r?\n

- 8,865
- 14
- 56
- 70
-
I was looking for a solution to replace two empty lines into just one. It works for me. Thanks! – Ricardo França Sep 23 '16 at 14:25
In VS 2012, the regex string to use to find and replace all blank lines is ^(?([^\r\n])\s)\r?\n

- 31
- 1
Ctrl + K, Ctrl+D auto formats the current document and that removes unnecessary space in your code. It helps keep your code readable if that what you were looking for.

- 8,060
- 3
- 28
- 45

- 65
- 1
- 3
-
i am referencing my issue , please look ,it looking ,this is something i was looking . https://stackoverflow.com/questions/44747909/visual-studio-update-model-from-data-base-issue/44772280?noredirect=1#comment76526844_44772280. – Vivek Shukla Jun 27 '17 at 06:53
-
2