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


当前回答

我没有看到组合的答案,所以搜索^\s+$并替换为{nothing}

^\s+$ means
  ^ start of line
  \s+ Matches minimum one whitespace character (spaces, tabs, line breaks)
  $ until end of line

其他回答

你需要一个正则表达式。

你必须进入扩展模式

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

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

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

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

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

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

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

按CTRL+A,选择TextFX菜单-> TextFX编辑->删除空白行如上所述的工作。

但如果行包含一些空格,然后将光标移动到该行,并按CTRL + h。“Find what:”sec将显示空白,在“Replace with”部分,将其保留空白。 现在所有的空格都被删除,现在尝试按CTRL+A,选择TextFX菜单-> TextFX编辑->删除空白行

这个模式在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$”可以。