sublime text排序需先确保每行独立,再用edit→sort lines按字典序排序;数字需补零对齐后排序;中文须装sortbypinyin插件实现拼音排序。

排序前必须确保每行是独立的文本单元
Sublime Text 的排序功能默认按整行处理,如果某行包含多个用空格或逗号分隔的值(比如 apple, banana, cherry),直接排序会把整行当一个字符串比较,而不是按字段拆分。所以第一步得确认你要排的是“行”,不是“行内的词”。常见误操作是选中一段带换行符的文本后发现排序结果不对——大概率是因为光标没放在行首/行尾,导致部分行被漏掉或合并。
实操建议:
- 用
Ctrl+L(Windows/Linux)或Cmd+L(macOS)逐行选择,确保每行都被完整选中 - 或者将光标移到文件开头,按
Ctrl+A全选后再操作,避免遗漏 - 如果文本含空行,排序后它们会被集中到顶部或底部,影响阅读——建议提前用
Find → Find All搜索^\s*$删除空行
用 Edit → Sort Lines 实现基础字母排序
这是最常用也最容易上手的方式,对应菜单路径 Edit → Sort Lines,本质调用的是 Sublime Text 内置的字典序排序(ASCII 值顺序)。它不区分大小写,Z 会排在 a 前面,因为大写字母 ASCII 值更小。
常见问题与应对:
- 想忽略大小写?先执行
Edit → Convert Case → To Lower Case,排序完再手动恢复大小写(没有一键“忽略大小写排序”原生选项) - 排序后中文乱序?Sublime Text 默认按 UTF-8 字节序排,不是拼音序。如需按拼音排,得借助插件(如
SortByPinyin),纯编辑器自身不支持 - 误点了
Sort Lines (case sensitive)?它和普通Sort Lines在 v4.4+ 中行为一致,不必刻意避开
用正则 + Sort Lines 实现数字行排序
纯数字行(如 12、3、105)直接走 Sort Lines 会得到 105、12、3(字符串排序),而非数值顺序。解决办法是补零对齐后再排,靠正则一步到位。
操作步骤:
- 选中要排序的数字行
- 按
Ctrl+H打开替换面板,勾选Regular Expression - 查找框填:
^(\d+)$,替换框填:0000000000$1(足够覆盖你最大数字的位数) - 点
Replace All,再执行Edit → Sort Lines - 最后用
^0+(\d+)$替换为$1去掉前导零
注意:这个方法依赖你预估最大位数。若数字跨度极大(如同时含 7 和 1234567890),补 10 个零比补 5 个更稳妥。
安装 SortByPinyin 插件处理中文排序
Sublime Text 自身不解析汉字语义,Sort Lines 对中文只是按 Unicode 码点排,结果接近乱序。真正按拼音首字母或全拼排序,得靠第三方插件。
安装与使用要点:
- 通过 Package Control 安装
SortByPinyin(不是ChineseSort,后者已停更且不兼容 v4) - 安装后重启,选中中文行,右键 →
Sort By Pinyin → Sort by pinyin (first letter)即可按首字母分组 - 该插件不支持混合中英文行的智能排序——比如
苹果 12和banana放一起,它会把中文全排前面,英文全排后面,不会交叉比较
如果你的文本里中英混排且要求统一排序逻辑,就得先人工分离、分别排序、再合并,没有自动方案。











