如何在Notepad++中删除指定行号的行?
如何在Notepad++中删除指定行号的行?
嘿,我来给你两个超实用的办法,帮你搞定在Notepad++里删除指定行号(1、8、15、22、29、36、43、50)的需求,操作都很简单,看你偏好哪种:
方法一:书签标记+批量删除(新手友好,直观不易错)
这个方法适合不想写正则的同学,手动标记要删的行再批量删掉就行:
- 首先按
Ctrl+G调出「转到行」窗口,输入1,点击「转到」定位到第一行,然后按Ctrl+F2给这行加上书签(行号旁边会出现一个小蓝点) - 重复上面的操作:按
Ctrl+G输入8,转到后加书签;依次给15、22、29、36、43、50这些行都加上书签 - 等所有要删的行都标记好后,点击顶部菜单栏的「搜索」→「书签」→「删除已标记的行」,瞬间就搞定啦!
方法二:正则表达式批量替换(适合不想手动点的同学)
如果觉得手动加书签太麻烦,用正则替换可以一步到位:
- 按
Ctrl+H打开替换窗口,切换到「正则表达式」模式,注意不要勾选「.匹配换行符」这个选项 - 在「查找目标」框里输入这段正则:
简单解释下:这段正则是依次匹配第1行(跳过0行后匹配)、第8行(跳过7行后匹配)、第15行(跳过14行后匹配)……直到第50行,精准定位你要删的每一行^(?:.*\R){0}.*\R?|^(?:.*\R){7}.*\R?|^(?:.*\R){14}.*\R?|^(?:.*\R){21}.*\R?|^(?:.*\R){28}.*\R?|^(?:.*\R){35}.*\R?|^(?:.*\R){42}.*\R?|^(?:.*\R){49}.*\R? - 「替换为」框保持空白,然后点击「全部替换」,指定的行就会被批量删除啦
备注:内容来源于stack exchange,提问作者President Jam




