几乎所有写作场景都有字数要求:SEO 博文要达到一定篇幅才有排名优势,学术论文有页数或字数上限,简历要控制在一页内,申请材料通常要求”300字以内”。字数统计工具粘贴文本即可获得词数、字符数、句子数和阅读时长,不需要打开 Word 或 Google Docs。
统计的内容
词数(Word Count)
词的定义通常是被空白字符分隔的字符序列。对于中文来说,情况特殊——中文没有空格分词,通常按字符数而不是词数来衡量篇幅。
英文词数边界情况:
- 带连字符的词如
well-being:部分工具算 1 词,部分算 2 词 - 数字如
42或3.14:通常算 1 词 - URL 如
https://example.com:通常算 1 词 - Markdown 标记如
**加粗**:可能被预处理剥离,也可能被直接计入
字符数
两种计算方式:
含空格:包括所有空白字符的总字符数。微博、Twitter 等平台的字数限制采用此方法——空格也占字符位。
不含空格:只统计非空白字符,常见于学术投稿要求中,更关注内容密度而非原始长度。
一篇 500 词的英文文章通常有 2500–3000 个字符(含空格)。
句子数
以句号 .、问号 ?、感叹号 ! 后跟空白字符或文末作为分割依据。缩写词(如 Dr.、e.g.)会导致误判,所以句子数是近似值。
段落数
按空行分隔统计段落数,帮助检查文章结构是否符合预期大纲。
阅读时长
用词数除以平均阅读速度得出。英语默认 200–250 词/分钟,中文默认约 300–500 字/分钟。
阅读时长(分钟)= 词数 ÷ 阅读速度
不同工具用不同的默认值,对同一篇 1000 词文章的估算可能相差 1 分钟,属于正常偏差。
各写作场景的字数参考
| 场景 | 典型目标 | 备注 |
|---|---|---|
| 微博 | ≤ 140 字(汉字) | 中文字符计 2 字节,实际约 140 字 |
| X(原 Twitter)帖子 | ≤ 280 字符 | 字符数,非词数 |
| 公众号文章 | 1000–3000 字 | 太短没有深度,太长读完率低 |
| SEO 英文博文 | 800–2000 词 | 取决于关键词竞争度 |
| 长篇技术指南 | 2000–5000 词 | 全面性内容 |
| 学术摘要 | 150–250 词 | 由期刊/会议规定 |
| 简历 | 300–600 词 | 目标控制在一页 |
| 求职信 | 250–400 词 | 三段式,一页内 |
| Meta 描述 | 150–160 字符 | 超出会被搜索引擎截断 |
不同工具统计结果为何不同
同一段文字粘进 Word、Google Docs 和在线工具,可能得到略微不同的词数。常见原因:
- 连字符词:
well-being算 1 词还是 2 词,各工具标准不同 - Markdown 标记:
**加粗**里的星号是否被剥离再统计 - URL 处理:
https://example.com/path按斜线拆开会变成多个”词” - 连续空白:多个空格只算一个分隔符
- 代码块:部分工具排除代码块不统计
实际差异通常小于 2%。有目标字数要求时,固定用同一个工具统计就好。
实战场景
SEO 博文篇幅把控
搜索引擎倾向于在信息类查询中给篇幅更全面的内容更高排名。用字数统计检查自己的文章是否达到竞争门槛——如果竞品都在 1500 词以上而你只有 600 词,知道要在哪里扩展。
API 文档结构分析
技术文档各章节的字数分布可以反映侧重点。统计每节的词数,确保核心概念有足够覆盖,样板文字保持精简。
README 文件可读性
GitHub README 没有字数上限,但每节控制在合理范围内读起来更顺畅。检查过长的小节,可能是该拆分或改用列表的地方。
邮件与工单回复
短邮件更容易被读完。如果一封支持回复超过 200 词,考虑改用项目列表结构。
Meta 描述写作
SEO meta description 最佳长度是 150–160 字符(含空格)。超出这个范围搜索引擎会自动截断。用字符计数器写好后精确裁剪。
代码实现:阅读时长计算
在博客文章中显示”预计阅读时长”是降低跳出率的有效方法——让读者在点进来时就知道时间成本,留下来的都是真正感兴趣的。
function readingTime(text) {
const words = text.trim().split(/\s+/).length;
const minutes = Math.ceil(words / 200);
return `${minutes} 分钟阅读`;
}
import math
def reading_time(text: str) -> str:
# 中文按字符统计,英文按词统计,这里简化处理
char_count = len(text.replace(' ', ''))
minutes = math.ceil(char_count / 400) # 中文约 400 字/分钟
return f"约 {minutes} 分钟"
惯例是向上取整、显示在正文标题下方、折叠前可见。
粘贴文本,立即获取统计数据。立即使用字数统计工具 →