Is there a way in Notepad++ to delete every other or nth line? I have a massive list of data and I need to reduce the size.
The data itself is not that important and out of a list of 10,000 items I only need a selection of 5,000
Is there a way in Notepad++ to delete every other or nth line? I have a massive list of data and I need to reduce the size.
The data itself is not that important and out of a list of 10,000 items I only need a selection of 5,000
I'm not sure Notepad++ is the best tool for this, but using the Power of Regex, we should be able to do it.
Open the replace menu, fill in ([^\n]*\n)[^\n]*\n
in the "Find what" box and $1
in the "Replace with" box. Then select regular expression for the search mode, click replace all and every second line is deleted.
You can build similar regexes if you want to do something similar. For example, (([^\n]*\n){a})[^\n]*\n
will replace every nth line if you replace a
by n - 1 and [^\n]*\n([^\n]*\n)
will let you keep even lines instead of odd ones.
You can try to use a Macro.
I came across this issue myself. What worked for me, also using the Find/Replace function, is to:
I think you can do this with awk if you're on a unix style platform:
awk 'NR % 2 == 0' file > outfile
NR is the line number, so this will just say "if the line is divisible by 2 stick it in newfile."
If you are on windows, I think the answer here would work:
Mirroring that question, here is a solution for most OS using "find & replace" :
(.+\R).+(\R|$)
$1
Note:
I don't think there is a feature in Notepad++ that will automatically delete every other (or every nth) line, but if you wrote a short conversion program it would only take a few minutes.
The pseudocode would look something like this:
1. Create a StreamReader and StreamWriter (make sure you are not trying to read from
and write to the same file)
2. While (StreamReader is reading lines) increment i. You could mod it by whatever
number n you wanted in order to delete certain lines. Then have a conditional clause
that would write out if i%n == 0 or whatever you specify.
3. Close the program.
That doesn't exactly answer your question, but I hope it helps.
Another way, you can use the command line cc.dl 5.5
of ConyEdit(a plugin) to delete the very fifth line of each group, five lines for each group.