【发布时间】:2011-08-11 03:45:24
【问题描述】:
有时,从我的电子邮件中复制粘贴代码会使所有内容都有一个额外的空白行。
例如
1: hi
2:
3: hello
4:
有没有办法用正则表达式来定位这些空行并删除它们? 我正在使用带有搜索(带正则表达式)和替换功能的记事本++。
【问题讨论】:
有时,从我的电子邮件中复制粘贴代码会使所有内容都有一个额外的空白行。
例如
1: hi
2:
3: hello
4:
有没有办法用正则表达式来定位这些空行并删除它们? 我正在使用带有搜索(带正则表达式)和替换功能的记事本++。
【问题讨论】:
要删除 Notepad++(我使用的是 v7.8.4)中的双倍行距,请访问:Edit、Line Operations、Remove Empty Lines。
【讨论】:
搜索模式 = 扩展
查找内容:\r\n\r\n
替换为:\r\n
【讨论】:
因为 Notepad++ 正则表达式只能逐行操作,没有多行模式,你不能单独使用正则表达式删除整行。 从 Notepad++ 6.0 起不再适用,现在使用PCRE 作为其正则表达式引擎并允许多行替换。请参阅this answer 了解更多信息。
Notepad++ 附带的 TextFX 插件允许您在不使用正则表达式的情况下删除空白行。只需突出显示整个文档 (Ctrl+A) 并执行 TextFX > TextFX Edit > Delete Blank Lines。如果您的选择或文档以空行开头和/或结尾,则不会自动删除这些行 - 但删除这些只是以下问题:
Ctrl+主页
删除
Ctrl+结束
退格
【讨论】:
我没有notepad++,但正则表达式“^$”(不带引号)只匹配空行。也许 notepad++ 将允许您用空字符串替换该正则表达式的匹配项,从而删除空行。
【讨论】:
^\s*$ 这样的东西。