如何在Notepad++中仅基于指定样式文本移除连续重复行?
解决方法
Notepad++自带的「移除连续重复行」功能是按整行比对的,要实现只看每行第二个-之后的内容去重,得先调整文本结构,具体步骤如下:
1. 把要比对的内容移到行首
打开你的文本文件,按Ctrl+H调出替换窗口:
- 查找模式选「正则表达式」,不用勾选「匹配换行符」
- 查找内容填:
^(.*?\.jpg - )(.*)$ - 替换内容填:
$2|$1$2 - 点击「全部替换」
这一步会把每行第二个-后面的内容挪到最前面,用|隔开(原文本里没这个字符,不会冲突),比如原行:NEW! Most Popular 001.jpg - 1227 px - 244 px - 2507 px - 1748 px
会变成:1227 px - 244 px - 2507 px - 1748 px|NEW! Most Popular 001.jpg - 1227 px - 244 px - 2507 px - 1748 px
2. 移除连续重复行
点击顶部菜单栏的「Edit > Line Operations > Remove Consecutive Duplicate Lines」,这时候软件会按行首的重复内容(也就是原第二个-之后的部分)去重,每组连续重复的行只会保留最后一行。
3. 恢复原文本格式
再次打开替换窗口:
- 查找内容填:
^.*?\|(.*)$ - 替换内容填:
$1 - 点击「全部替换」
这一步会删掉行首的比对内容和分隔符,还原成你需要的最终格式。
可选调整:保留每组第一行
如果想保留每组连续重复行的第一行,在步骤2之后先执行「Edit > Line Operations > Reverse Lines」,再移除重复行,之后再反转一次,最后执行步骤3恢复格式即可。
内容的提问来源于stack exchange,提问作者Pubg Mobile
相关产品推荐
相关产品推荐

