文本去重与排序

一行一条粘进去,一键去重、排序、打乱、改大小写、去空格。处理邮件列表、关键词表、ID 清单这类重复劳动特别快。

文本去重与排序工具说明

收集来的邮箱列表有一堆重复、从系统导出的 ID 顺序乱、关键词表需要按长度排一遍——这些手工整理的活儿,其实一行命令就能搞定,但不是每个人都随时有个终端。这个工具把这些操作做成了复选框。

它能做的六件事

  • 去重:完全相同的行只保留第一次出现的那一条。可以设置忽略大小写,这样 Apple 和 apple 会被当成同一个。
  • 排序:提供 9 种排序方式,覆盖日常绝大多数需求。
  • 打乱:随机重排顺序。抽奖、随机分组、生成随机样本时用得上。
  • 大小写转换:全大写、全小写、首字母大写、每词首字母大写。
  • 去空格:清掉每行前后的空格和 Tab。从网页或表格里复制出来的数据,经常在行尾藏着看不见的空格,导致去重失效——这一步往往才是关键。
  • 统计数量:可以在每行后面附上它出现的次数,方便找出真正的重复项。

排序方式的区别

排序看着简单,实际有多种口径,选错了结果就不对:

  • 字典序:逐个字符比较编码值。问题是数字会出乱子——字典序认为 10 排在 2 前面,因为字符 1 小于 2。
  • 自然序:把连续数字当成一个整体比较,所以 2 排在 10 前面。文件名、章节号、版本号(v1 v2 v10)必须用这个。
  • 按长度:短的在前面。整理关键词、标签时常用。
  • 纯数值:整行当数字处理。遇到不能转成数字的行,会排到最后。

中文还有一层:字典序是按汉字编码比的,结果和拼音顺序、笔画顺序都不一致。需要严格按拼音排,得用专业工具,本工具做不到。

「忽略大小写去重」的隐藏问题

勾选这个选项后,Apple、APPLE、apple 会合并成一条。保留的是最先出现的那个写法。

这点在处理邮箱时很重要——邮箱地址理论上不区分大小写,但很多人习惯把首字母大写。如果你的列表里同时有 [email protected] 和 [email protected],用忽略大小写去重能合并掉。但如果是处理区分大小写的标识符(比如密码、Base64、Unix 文件名),千万别勾这个,会把不同的东西误判成同一个。

做数据清洗的推荐顺序

如果你在整理一份脏数据,建议按这个顺序操作:

  • 第一步 去空格。先清掉行首行尾的空白,否则 "apple " 和 "apple" 会被当成两条不同记录。
  • 第二步 删空行。空行会干扰去重和排序结果。
  • 第三步 统一大小写。如果需要忽略大小写,先转换比去重时忽略更彻底。
  • 第四步 去重。前面的步骤做完,去重才是干净的。
  • 第五步 排序。最后排序便于对比检查。

顺序错了结果就会打折扣。比如先去重再去空格,就可能留下"看起来一样但实际不同"的多条记录。

能处理多少行

几万行完全没问题,浏览器处理文本很快。十万行以上会开始感觉到卡顿,取决于电脑内存。如果数据量特别大(几十万行以上),建议还是用命令行工具:sort -u 去重排序、awk '!a[$0]++' 保序去重、shuf 打乱,都比在网页里处理更高效。

数据安全

所有处理都在浏览器内存里完成,没有任何网络请求。你可以按 F12 打开 Network 面板,点"处理"看看——一个请求都不会发出。对于含手机号、邮箱、客户名单的数据,这点很关键。

常见问题

去重后原来的顺序会变吗?

去重本身不打乱顺序——保留的是首次出现的那个位置。所以只要排序方式选"不排序",输出的顺序和输入一致,只是重复项被删掉了。如果同时选了排序,那自然会重排。

怎么知道删掉了多少条?

处理完成后上方状态栏会显示原始行数、去重后行数、删掉了多少条。勾选"输出时带上出现次数"还能看到每条具体重复了几次。

中文排序为什么不是按拼音?

因为字典序用的是字符编码值,汉字编码顺序和拼音、笔画都不对应。本工具提供的是编码序,结果稳定但不能当拼音序用。需要按拼音排,可以先用带拼音标注的数据在表格软件里排。

随机打乱是可复现的吗?

不可复现。每次点击都会用新的随机起点,同一份输入两次打乱结果不同。这正是打乱该有的行为——如果结果可复现,就不随机了。

支持按列去重吗,比如 CSV 的第二列?

不支持。本工具按整行文本比较。如果只想按某一列去重,可以先把该列单独复制出来处理,或者用表格软件的数据功能。

相关工具