Sublime Text 无一键词频统计功能,但用 Find All 配合 Count 按钮、正则 \bword\b、Whole Word 模式及正确范围设置,可实现精准词频统计;中文需外部分词,项目级统计须先加载文件夹。

Sublime Text 本身不提供“输入一个词,直接返回它在整个文件中出现多少次”的一键命令;但用 Find All 配合正确设置,就能得到精确、可靠、零插件的词频数——比任何插件都准,尤其对代码类文本。
为什么 Count 按钮比 Find All 更适合精确计数
Count 按钮(查找面板右上角数字加等号图标)直接返回当前视图中匹配总数,且实时响应开关变化;Find All 虽然也能高亮全部,但只在状态栏显示“X matches in Y file”,还依赖状态栏开启(View → Show Status Bar)。更重要的是:Count 不受高亮干扰,改正则、切 Whole Word(W)、调整范围(全文件 / 仅选中),数字立刻刷新。
- 想统计全文?光标放任意位置、别选中文本;选中一段就只算那段
- 没关
Match Case(Aa)会导致User和user被算作不同词 - 用
.正则统计字符数会漏掉换行符或误算\r,纯属不可靠凑数
\bword\b 是精确匹配单词边界的唯一可靠写法
默认的 fetch 会匹配到 refetch 或 fetcher 里,这不是你想要的“词频”。必须启用正则(点 .* 图标),再用 \bfetch\b 才能确保只匹配独立单词。
-
\b是单词边界断言,不是字符;它不消耗文本,只检查左右是否为字母/数字/下划线以外的位置 - 若要同时匹配
axios.get和axios.post,用axios\.(get|post),注意.必须转义为\. - 中文无原生单词边界概念,
\b你好\b无效;想统计中文词需先用外部工具分词,Sublime 原生不支持
全局项目级词频统计必须先加载文件夹
Ctrl+Shift+F(Find in Files)只有在已通过 File → Open Folder… 加载项目根目录后才可用。否则它只搜已打开的标签页,结果严重失真。
-
Where栏填src/比**/*.py更稳;**仅在正则开启时生效,日常用路径前缀更可靠 - 结果页显示 “3 files, 21 matches” 中的
21是匹配行数,不是词频;一行含两个fetch,它只算 1 行 - 要逼近真实词频,得切回单文件,对每个词单独用
\bfetch\b+Count逐个统计
真正容易被忽略的是:Sublime 的词频统计逻辑完全基于其内部 regex 引擎,它已处理重叠匹配、换行边界和编码一致性;而手写 Python 脚本调用 view.substr(view.find_all(...)).count(...) 很容易漏掉跨行、BOM 或 CRLF 问题。如果你需要导出多词频次表,别硬撑——把清洗后的文本丢给 collections.Counter,Sublime 只负责看结果。


















