Sublime Text怎么删除重复行_Sublime Text去重复行教程【对比】

梦丽君_5365

梦丽君_5365

2026-04-07

329人浏览

原创

sublime text无原生保序去重命令,remove duplicate lines仅删相邻重复且敏感于空白字符,sort lines: unique会打乱顺序;保序需用正则^(.*$)\n(?=.*^\1$)或外部命令如awk '!seen[$0]++'。

sublime text怎么删除重复行_sublime text去重复行教程【对比】

Sublime Text 没有“一键去重并保序”的原生命令,所有看似能直接删重复行的操作,要么只删相邻重复(Remove Duplicate Lines),要么会打乱原始顺序(Sort Lines: Unique)。真要安全、可控地删重复行,得先明确你要什么:保序?还是高效?还是处理大文件?

为什么 Remove Duplicate Lines 总是漏删?

这个命令来自 Sublime 自带的 Text 插件,但它只比对「当前行和上一行是否完全相同」。如果重复行中间隔了别的内容,它就视而不见。

  • 比如三行:apple → banana → apple,它不会删掉第二个 apple
  • 它对空格、制表符、BOM、零宽字符极度敏感——apple (末尾空格)和 apple 被视为两行
  • 不支持忽略大小写、不支持按列匹配、不能跳过空行

Sort Lines: Unique 为什么顺序全乱了?

这是 Sublime Text 4.4+ 新增的命令,本质是「先排序 + 再合并相邻重复」。它确实一步到位,但原始顺序必然丢失。

智谱清言
智谱清言

智谱清言是一款AI工具,智谱推出的全能AI助手。

下载
  • 执行后,zebra 一定排在 apple 前面,不管原文档里谁先出现
  • 它默认保留每组重复中的第一行(按字典序排完后的第一行),不是原文中第一次出现的那行
  • 快捷键绑定需手动加配置:{"keys": ["ctrl+alt+u"], "command": "sort_lines", "args": {"unique": true}}

想保留原始顺序?用正则 ^(.*$)\n(?=.*^\1$)

这个正则能匹配「后面还有相同行」的所有重复行(除第一个),适合代码、配置项等依赖顺序的文本。

  • 打开查找面板(Ctrl+F),勾选 Regular Expression 和 Whole Line
  • 输入:^(.*$)\n(?=.*^\1$),点击 Find All
  • 再按 Ctrl+Shift+L 转为多光标,按 Delete 删除所有匹配行(首行自动保留)
  • 注意:Windows 换行符 \r\n 可能导致匹配失败,建议先统一换行符为 Unix(File → Line Endings → Unix)

大文件或高频处理,别硬扛——换外部命令

超过 5 万行时,Sublime 的排序和正则会明显卡顿,且内存占用陡增。这时候用系统工具更稳:

  • Linux/macOS 终端:sort -u file.txt > dedup.txt(会排序) 或 awk '!seen[$0]++' file.txt > dedup.txt(保序)
  • Windows PowerShell:Get-Content file.txt | Sort-Object -Unique(排序) 或 Get-Content file.txt | ForEach-Object {$seen{$_.Trim()}++ -eq 1} | Set-Content dedup.txt(保序需手动去空格)
  • Python 一行(跨平台):python3 -c "lines = open('file.txt').readlines(); print(''.join(dict.fromkeys(lines)), end='')"

真正容易被忽略的是:所有 Sublime 方法都对不可见字符零容忍。哪怕一行末尾多一个 \t 或 U+200B,就逃过所有去重逻辑——处理前先用正则 \s+$ 清尾空格,往往比纠结命令更重要。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

sublime

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
python中print函数的用法
python中print函数的用法

python中print函数的语法是“print(value1, value2, ..., sep=' ', end='\n', file=sys.stdout, flush=False)”。本专题为大家提供print相关的文章、下载、课程内容,供大家免费下载体验。

2023.09.27

2560

5

python print用法与作用
python print用法与作用

本专题整合了python print的用法、作用、函数功能相关内容,阅读专题下面的文章了解更多详细教程。

2026.02.03

249

24

sort排序函数用法
sort排序函数用法

sort排序函数的用法:1、对列表进行排序,默认情况下,sort函数按升序排序,因此最终输出的结果是按从小到大的顺序排列的;2、对元组进行排序,默认情况下,sort函数按元素的大小进行排序,因此最终输出的结果是按从小到大的顺序排列的;3、对字典进行排序,由于字典是无序的,因此排序后的结果仍然是原来的字典,使用一个lambda表达式作为key参数的值,用于指定排序的依据。

2023.09.04

1118

7

php中foreach用法
php中foreach用法

本专题整合了php中foreach用法的相关介绍,阅读专题下面的文章了解更多详细教程。

2025.12.04

718

13

数据库Delete用法
数据库Delete用法

数据库Delete用法:1、删除单条记录;2、删除多条记录;3、删除所有记录;4、删除特定条件的记录。更多关于数据库Delete的内容,大家可以访问下面的文章。

2023.11.13

2671

4

drop和delete的区别
drop和delete的区别

drop和delete的区别:1、功能与用途;2、操作对象;3、可逆性;4、空间释放;5、执行速度与效率;6、与其他命令的交互;7、影响的持久性;8、语法和执行;9、触发器与约束;10、事务处理。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2023.12.29

825

3

windows查看端口占用情况
windows查看端口占用情况

Windows端口可以认为是计算机与外界通讯交流的出入口。逻辑意义上的端口一般是指TCP/IP协议中的端口,端口号的范围从0到65535,比如用于浏览网页服务的80端口,用于FTP服务的21端口等等。怎么查看windows端口占用情况呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

2023.07.26

3099

3

查看端口占用情况windows
查看端口占用情况windows

端口占用是指与端口关联的软件占用端口而使得其他应用程序无法使用这些端口,端口占用问题是计算机系统编程领域的一个常见问题,端口占用的根本原因可能是操作系统的一些错误,服务器也可能会出现端口占用问题。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

2023.07.27

2678

6

windows照片无法显示
windows照片无法显示

当我们尝试打开一张图片时,可能会出现一个错误提示,提示说"Windows照片查看器无法显示此图片,因为计算机上的可用内存不足",本专题为大家提供windows照片无法显示相关的文章,帮助大家解决该问题。

2023.08.01

1448

3

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程