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


当前回答

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

^$

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

其他回答

从空行中删除空白的一个简单的替代方法:

TextFX>TextFX编辑>修剪尾随空间

这将删除所有的尾随空格,包括空行中的尾随空格。 确保后面没有重要的空格。

有时\n\r等不工作,在这里找出它,你实际上的正则表达式应该是什么。

这个技巧的优点:如果你想一次在多个文件中替换,你必须需要这个方法。以上都不行…

您可以搜索以下正则表达式:^(?: \ [t] * (?): \ r ? \ n | \ r)) +,代之以空字段

这个模式在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
_____________________________________

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

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