如何替换notepad++中的空行?我尝试了一个发现和替换与空行在发现,并没有在替换,但它不工作;它可能需要正则表达式。


当前回答

如果空行包含制表符或空格,这显然不起作用。许多网页(例如http://www.guardian.co.uk/)包含这些白线,这是错误的HTML编辑器的结果。

使用正则表达式删除空白,如下所示:

更改模式:[\t]+$ 到什么。

[\t]匹配制表符或空格。'+'匹配一个或多个出现,'$'标记行结束。

然后使用notepad++/textFX删除单个或额外的空行。 请确保这些空行在给定的上下文中没有意义。

其他回答

你需要一个正则表达式。

你必须进入扩展模式

如果你想让所有的行都变成一行,请使用\r\n。如果只是想删除空行,可以像@Link最初建议的那样使用\n\r。

将任意一个表达式替换为空。

notepad++ Ctrl-H 选择正则表达式 输入^[\t]*$\r?\n进找什么,留代替空。这将匹配所有以空格开始并以回车符结束的行(在本例中为windows crlf) 单击“查找下一步”按钮,亲自查看它如何只匹配空行。

上面的一些表达式和扩展表达式不适合我,但是正则表达式“$\n$”可以。

这个模式在notepad++ v8.1.1中进行了测试

它替换每行文本前后的所有空格/制表符/空行。

它不应该干扰文本中间的任何东西。

Find: ^(\s|\t)+|(\s|\t)+$

Replace: leave this blank


Before:
_____________________________________
\tWORD\r\n
\r\n
\tWORD\s\tWORD\s\t\r\n
\r\n
\r\n
WORD\s\s\tWORD\t\sWORD\s\r\n 
\t\r\n
\s\s\s\r\n
WORD\s\sWORD\s\s\t\r\n

____________________________________


After:
_____________________________________
WORD\r\n
WORD\s\tWORD\r\n
WORD\s\s\tWORD\t\sWORD\r\n
WORD\s\sWORD
_____________________________________

/n/r假设一个特定类型的换行符。要瞄准任何空行,您还可以使用:

^$

这就是说,任何开始和结束之间没有任何内容的行。这更像是包罗万象。替换为相同的空字符串。