跳到主内容
UniKit

文本集合运算

把两段文本按行做交集、并集、差集(A−B / B−A)、对称差与去重合并,可选忽略大小写与空白、排序,并显示每组的元素数量。

浏览器本地运行所有计算都在你的浏览器里完成,数据不会离开本机。

比较时以整行为单位;忽略大小写/空白只影响“是否算同一项”,输出仍保留首次出现的原始写法。

数量统计

A 的行数: 4B 的行数: 4

运算结果

交集(A ∩ B)

2
banana
date

并集(A ∪ B)

6
apple
banana
cherry
date
elderberry
fig

差集(A − B)

2
apple
cherry

差集(B − A)

2
elderberry
fig

对称差(A ⊕ B)

4
apple
cherry
elderberry
fig

去重合并

6
apple
banana
cherry
date
elderberry
fig

这个工具能做什么

  • 对两份名单做集合运算:找出两边都有的(交集)、只在一边出现的(差集)、全部合并去重(并集)。
  • 核对两个版本的关键词、白名单、邮件列表或商品 SKU,快速看出多了什么、少了什么,不用肉眼一行行比。
  • 忽略大小写和空白后比较,避免「Apple」和「apple 」被当成两个不同条目。
  • 结果按需排序,复制出来就能直接贴进表格或工单。

示例

输入

A:
apple
banana
cherry
date

B:
banana
DATE
elderberry
fig

输出

交集:banana
date

差集 A−B:apple
cherry

差集 B−A:elderberry
fig

对称差:apple
cherry
elderberry
fig

勾选了「忽略大小写」:DATE 和 date 视为同一项,但输出仍保留首次出现的原始写法(date)。

常见问题

大小写不一样的两个词算同一项吗?

默认不算,勾选「忽略大小写」后就算。忽略大小写/空白只影响「是否算同一项」的判断,输出仍然保留首次出现的原始写法,不会把小写强行改成大写。

结果里会保留重复行吗?

不会。比较是按整行、按集合做的:同一项在一边出现多次只保留第一次出现的那一行。如果只是想给一段文本去重,选「去重合并」并让 B 留空即可。

交集是空的说明什么?

说明两边没有一行完全相同(或在当前忽略选项下相同)。这时先检查是不是有空行、行尾空格或大小写差异,把「忽略空白字符」和「忽略大小写」勾上再对比。

能比较多少行?

每侧最多 20000 行。超过会直接报错而不是让页面卡死,因为运算在浏览器主线程里做,需要防止超大输入把标签页拖垮。

关键词:set集合交集并集差集对称差去重intersectionuniondifferencededuplicate

同类工具