跳到正文

文本行排序与去重

在浏览器中按字母、自然顺序或长度给文本行排序,删除重复行和空行,整理各类列表。

结果

0 行
在浏览器中运行 · 无需上传工作原理

行排序与去重 使用方法

  1. 1

    粘贴列表

    每行一项,可以是姓名、关键词、文件名、邮箱地址、数字或日志行。

  2. 2

    组合步骤

    添加排序、去重或筛选等步骤,设置选项,并用箭头调整先后顺序。

  3. 3

    查看行数

    每个步骤都会显示删除或新增了多少行,结果区则显示最终的总行数。

  4. 4

    复制或下载

    复制结果,保存为 .txt 文件,或把它移到输入框中继续整理。

限制与 Pro

免费使用,无需注册,没有次数限制;在普通笔记本电脑上,10万行的列表排序、去重和筛选都能在一秒内完成。

Pro 可去除广告;所有步骤和预设都免费。 了解 Pro

关于 行排序与去重

从表格、邮件、日志文件和问卷导出的列表,拿到手时往往并不整齐:顺序混乱、内容重复,还夹杂多余的空格和空行。这个工具用一组从上到下依次执行的步骤来整理它们,只要你修改列表或任何一个步骤,结果就会立即更新。

排序有四种方式。A–Z 按你所用语言的字典顺序排列,所以“éclair”会排在 e 开头的词里。自然排序会读取文本中的数字,把 file2 排在 file10 之前,符合人们的习惯。数字排序取每行出现的第一个数字,能识别 1,200 这样的千位分隔符和 2.5 这样的小数,没有数字的行放在最后。长度排序则按行从短到长排列。

去重可以保留第一个或最后一个副本,也可以删除所有出现多次的行,还能把“Apple”和“apple ”视为同一项。其他步骤包括去除空格、删除空行、反转或打乱顺序、保留或删除包含某个词或匹配正则表达式的行、查找和替换、添加前缀、后缀或行号,以及把多行合并成一个逗号分隔的字符串,或把它重新拆分成多行。

打乱顺序使用浏览器加密随机数生成器提供的 128 位随机数,在你编辑期间保持不变,直到你点击“重新打乱”。步骤可以调整顺序、临时关闭而不用删除,也可以从“排序并去重”这样的预设中载入。你的列表和步骤会被记住,点击“用作输入”还能把结果当作新一轮整理的起点。

隐私

排序、筛选和其他所有步骤都在当前浏览器标签页中运行,你粘贴的列表不会被传输出去。列表和步骤保存在本地存储中,刷新页面后仍然保留;点击“清空”会清空列表,删除步骤则会重置整套流程。

功能

四种排序方式

字典 A–Z、自然排序(file2 < file10)、按数字和按长度,均可升序或降序。

灵活去重

保留第一个或最后一个副本,或只保留仅出现一次的行,还可忽略大小写和空格。

可串联的步骤

去除空格、筛选、替换、编号、合并和拆分可按任意顺序组合,并实时显示行数。

公平的随机打乱

采用以 Web Crypto API 为种子的 Fisher–Yates 洗牌算法,在重新打乱之前顺序保持不变。

行排序与去重:常见问题

如何删除重复行并保持原有顺序?
删除所有排序步骤,只添加“去重”。它会保留每一行第一次出现的位置,删除后面的重复项,因此顺序不变。选择“保留最后一个”则改为保留最后一次出现的行;如果希望“Apple”和“apple”算作同一项,请勾选“忽略大小写”。
A–Z 和自然排序有什么区别?
A–Z 逐个字符比较文本,所以“file10”会排在“file2”之前,因为 1 小于 2。自然排序会把连续的数字当作整体数值,得到 file1、file2、file10,与文件管理器中的顺序一致。文件名、版本号和章节列表适合用自然排序,普通词语用 A–Z。
如何正确地给一列数字排序?
在“排序”步骤中选择“数字”模式。它会读取每行的第一个数字,包括负数、小数以及 1,200 这样的千位分隔符,并按数值大小排列,所以 9 会排在 10 和 1,200 之前。不含数字的行无论升序还是降序都放在最后。
可以把列表转成逗号分隔的值,再转回来吗?
可以。添加“合并”步骤,把所有行合并成一行,分隔符可以是逗号加空格,也可以是你输入的任意内容,包括表示制表符的 \t。反向操作时,先用逗号“拆分”,再接上“去除空格”和“删除空行”;预设“逗号分隔 → 多行”可一键完成设置。
打乱顺序是真正随机的吗?
它使用 Fisher–Yates 算法,不偏向任何位置,并由以浏览器 Web Crypto API 提供的 128 位随机数为种子的生成器驱动,而不是较弱的 Math.random。你继续编辑时顺序保持不变,结果不会跳来跳去;点击“重新打乱”即可得到新的顺序。
全部文本工具