如何在Notepad++中批量隔行移除LF以合并相邻两行?
如何在Notepad++中批量隔行移除LF以合并相邻两行?
嗨,这个需求用Notepad++的正则表达式替换就能轻松搞定,毕竟3万多行手动改根本不现实~我给你一步步说怎么操作:
- 首先打开Notepad++并加载你的TXT文件
- 按下快捷键
Ctrl+H打开替换对话框,或者通过顶部菜单栏的「搜索」→「替换」打开 - 在「查找模式」区域选择「正则表达式」,重点注意:不要勾选「. 匹配换行符」这个选项(默认就是不勾选的,别改它)
- 在「查找目标」输入框里填入正则表达式:
^(.*)\R(.*)\R - 在「替换为」输入框里填入:
\1 \2\R - 先可以选中文件前几行(比如4行)点击「替换」测试效果,确认符合预期后,再点击「全部替换」完成批量操作
解释一下这个正则的作用:它会匹配每连续的两行内容(包括每行末尾的换行符),然后把第一行的内容、空格、第二行的内容拼接起来,再保留一个换行符,正好实现你要的“第1+2行合并,第3+4行合并”的效果。
如果你的文件最后是奇数行(比如总共有30001行),最后那一行会保持原样,不会被合并,这个逻辑也很合理。另外\R是Notepad++正则里的特殊符号,能自动匹配Windows的CRLF(\r\n)或者Unix的LF(\n)换行符,不用特意区分文件的换行格式~
备注:内容来源于stack exchange,提问作者Ursula Badertscher




