我正在尝试删除文档中的空白行,但希望保留单个空白。例如:
line 1
line 2
line 3
line 4
必须删除查找和替换以在所有内容之间保留一个空白行:
line 1
line 2
line 3
line 4
任何帮助都值得感激。谢谢。
答案1
- 在里面代替对话框 ( Ctrl-H),选择扩展搜索模式。
- 为了找什么文本,输入(按照 Windows 回车/换行约定标记行尾):
\r\n\r\n
- 为了用。。。来代替文字,输入
\r\n
每次单击全部替换,双重 CR/LF 将被转换为单一,或四重 CR/LF 将被转换为双重。
输入的字符可能会在不同情况下发生变化,例如,如果一行只有一个空格,或者 CR/LF 约定不同,如在 Mac 和 Linux OS 中。
答案2
这将替换所有后跟 2 个换行符的换行符,仅保留 2 个换行符。
- Ctrl+H
- 找什么:
\R+(?=\R{2})
- 用。。。来代替:
LEAVE EMPTY
- 检查环绕
- 检查正则表达式
- Replace all
解释:
\R+ : 1 or more any kind of linebreak (i.e. \r, \n, \r\n)
(?= : positive lookahead, a zero-length assertion that make sure we have after
\R{2} : 2 linebreaks
) : end lookahead
给定示例的结果:
line 1
line 2
line 3
line 4
答案3
Windows 解决方案:您可以在 notepad++ 上使用此 autohotkey 脚本。
奖金:它可以在 notepad++ 以及计算机上的任何其他地方运行。
您可以使用快捷方式调用它(此处为 alt+space):
^!Space::
clipboard =
Send, ^a
Send, ^c
ClipWait
ClipBoard := RegExReplace(ClipBoard, "\R(?=\R{2,})")
sleep 100
Send, ^v
return