像这样:
A
B
C
D
E
F
G
H
I
对此:
A B C
D E F
G H I
这是一个 2500 行的文件,所以我不能只按 ctrl+j 键。
答案1
按Ctrl+键H访问替换对话框,勾选正则表达式,然后输入上述表达式。文本如下:
找什么: (.+)\r\n(.+)\r\n(.+)
用。。。来代替: \1\t\2\t\3\t
(最后一个\t
是可选的;如果删除它,您将不会在视觉上注意到任何差异,除非您希望该行以制表符结尾)
\r\n
在“查找内容:”中替换为:
\n
如果你正在编辑带有 UNIX 样式行尾的文件(仅限换行)\r\n
如果您正在编辑具有 Windows 样式行尾的文件(回车符后跟换行符;在这种情况下,您不需要修改原始正则表达式)\r
如果你正在编辑一个带有传统 Mac 风格行尾的文件(仅回车符)
您可以通过检查 Notepad++ 窗口底部的状态栏来找出您使用的行尾。它会显示“Dos\Windows”等。
如果你的文件行尾不一致(这通常是一件坏事,但并非不可能)并且您想一次性替换所有可能类型的换行符:
找什么: (.+)(\r|\n)+(.+)(\r|\n)+(.+)
用。。。来代替: \1\t\3\t\5\t
您可以了解有关正则表达式的更多信息这里。
答案2
这将用制表符替换所有换行符(前面或后面没有另一个换行符)。
- Ctrl+H
- 找什么:
[^\r\n]\K\R(?!\R)
- 用。。。来代替:
\t
- 检查环绕
- 检查正则表达式
- Replace all
解释:
[^\r\n] : not a line break
\K : forget all we have seen until this position
\R : any kind of line break
(?!\R) : negative lookahead, make sure we don'thave a line break after
替代品:
\t : a tabulation
给定示例的结果:
A B C
D E F
G H I