I'm cleaning up some code files (C#) and want to remove the regions. And I would like to delete all the lines that have the string '#region'. That's just an example, and I can think of several more uses, but is that even possible?
8 Answers
Notepad++ v6.5
Search menu -> Find... -> Mark tab -> Find what: your search text, check Bookmark Line, then Mark All. This will bookmark all the lines with the search term, you'll see the blue circles in the margin.
Then Search menu -> Bookmark -> Remove Bookmarked Lines. This will delete all the bookmarked lines.
You can also use a regex to search. This method won't result in a blank line like John's and will actually delete the line.
Older Versions
- Search menu -> Find... -> Find what: your search text, check Bookmark Line and click Find All.
- Then Search -> Bookmark -> Remove Bookmarked Lines
This is the most common feature of Notepad++ that I use to update my code.
All you need to do is:
- Select common string that is present in all lines.
- Press Ctrl + F
- In the Mark tab, paste the recurring string and check the Bookmark line checkbox.
- Click on Mark All
- Now go to menu Search → Bookmark → Remove Bookmarked Lines
You can refer to this link for pictorial explanation.
http://www.downloadorinstall.com/best-notepad-tips-and-tricks-for-faster-work-and-development/
Here is a way that removes the lines containing "YOURTEXT" completely:
- Open the Replace dialog
- Enter the following search string:
.*YOURTEXT.*[\r]?[\n]
(replace YOURTEXT with your text) - Enable "Regular expression"
- Disable ". matches newline"
The given regular expression matches both Windows and Unix end of lines.
If your text contains characters that have a special meaning for regular expression, like the backslash, you will need to escape them.
Using regex and find&replace, you can delete all the lines containing #region without leaving empty lines.
Because for some reason Ray's method didn't work on my machine I searched for (.*#region.*\n)|(\n.*#region.*)
and left the replace box empty.
That regex ensures that the if #region
is found on the first line, the ending newline is deleted, and if it is found on the last line the preceding newline is deleted.
Still, Ray's solution is the better one if it works for you.