按字母排序忽略大小写:大写开头的行为什么都不再堆在最前
导出的列表里 Apple、apple、BANANA 混在一起时,按字符编码排序会先把所有大写开头的行集中到前面。忽略大小写排序后,才是人眼期待的字母顺序。
什么时候需要忽略大小写排序
导出的邮箱列表、客户名册、商品标签、文件名清单,常常同一列里既有 Alice 也有 alice、既有 iPhone 也有 Iphone。表格的排序比的是字符编码,大写字母排在小写之前,于是大写开头的行全部先出现,看着像分成了两组。
当这份列表要交给别人核对,或者你准备按首字母分组时,这种顺序会让人以为数据出了问题。忽略大小写重排一遍再粘回表格,顺序才符合直觉,也方便和另一份名单逐行对照,不会看串行。
- 邮箱、客户名单、标签的字母排序
- 按首字母分组前的预处理
- 对照两份名单前的统一排序
怎么用才不出错
一行一项,粘进来即可。排序只改变顺序,不删除也不合并内容,所以 Apple 和 apple 会作为两行相邻出现——如果你把它们当成重复,需要另外跑一次去重,再回来排序。
空行会被排到最前面,因为空字符串被当成最小的一项。输入末尾多一个换行就会多出一个空行,粘之前先删掉结尾的空行,或者排完后手动去掉第一行。数字和符号也按字符编码参与排序,所以 item10 会排在 item2 前面。
- 排序不合并重复行,需要去重就再去一次
- 粘贴前删掉结尾空行,避免空行排到最前
- 数字按字符排序,item10 会排在 item2 前面
局限与替代
它只按字符编码做一次忽略大小写的比较,没有「自然排序」模式,所以带编号的文件名、版本号、章节号排出来可能不是 1、2、10 的顺序。需要这种顺序时,用支持自然排序的工具,或先把数字补零对齐。
它也不支持拼音排序、按笔画排序、按第二列排序或自定义优先级。这些需求在表格软件里用「自定义排序」更合适,因为能设置多个排序键;本工具适合一次性整理纯文本的一列,处理完再粘回去。
- 不支持自然排序,数字按字符比较
- 不认拼音、笔画或自定义顺序
- 多列排序请回表格软件处理
常见问题
为什么排序后 Apple 和 apple 没有合并?
排序只改顺序,不删内容。Apple 和 apple 仍是两行,只是忽略大小写后排序位置相邻。要合并请先用去重工具处理,再去排序。
为什么第一行总是空行?
因为空字符串被当作最小的一项。常见原因是原文末尾多了一个换行符,粘贴时被当成一个空行。删掉输入末尾的空行,或在结果里去掉第一行即可。
item10 排在 item2 前面,这正常吗?
正常。这是按字符逐位比较的结果,「1」比「2」小,所以 item10 排在 item2 前面。需要按数字大小排序时,先把编号补成相同位数(item02、item10),或用支持自然排序的工具。
相关工具:按字母排序(不分大小写)