左侧粘贴或输入文本,右侧即时显示十几项统计指标:字符总数、不含空格的字符数、中文汉字数、英文字母数、数字个数、标点符号数、行数、段落数、句子数、英文单词数、UTF-8 字节数,以及出现频率最高的 8 个字符。所有计算都在浏览器本地完成,输入的内容不会上传到任何服务器。
统计是实时的,不需要点「计算」按钮。同时选中一段文字时,左下角还会额外显示选中部分的字符数。
| 指标 | 统计口径 |
|---|---|
| 字符总数 | 按 Unicode 码点计数,含空格与换行。一个 Emoji 记 1 个字符 |
| 不含空格 | 从字符总数中剔除全部空白字符(空格、制表符、换行符) |
| 中文汉字 | 基本区(U+4E00–U+9FFF)、扩展 A 区(U+3400–U+4DBF)、兼容区与扩展 B 区及以后的汉字 |
| 英文字母 | 半角 A–Z、a–z 与对应的全角字母,并单独列出大写与小写数量 |
| 数字 | 半角 0–9 与全角 0–9 |
| 标点符号 | Unicode 标点类别(P),涵盖中英文标点如 ,。!?;:「」()—… |
| 空白字符 | 空格、制表符、换行、全角空格等所有空白 |
| 其他字符 | 数学符号、货币符号、emoji、图形符号等不属于上述类别的字符 |
| 行数 | 按换行符切分得到的行数,含纯空白行 |
| 非空行 | 去掉只含空白的行之后剩余的行数 |
| 段落数 | 以空行分隔的文本块数量,这是最贴近写作习惯的口径 |
| 句子数 | 以 。!?!?… 或换行结尾切分得到的句子数量 |
| 英文单词 | 按空白与标点切分的连续英文字母串,don't、state-of-the-art 算 1 个词 |
| UTF-8 字节 | 文本按 UTF-8 编码后占用的字节数,中文通常占 3 字节 |
字符数 ≠ 字节数。* 这是最常被忽略的差异。一个汉字在 UTF-8 下占 3 个字节,一个 Emoji 占 4 个字节,而英文字母只占 1 个。所以「800 字」的中文文章,UTF-8 字节数大约是 2400。数据库字段长度、短信计费、API 请求体限制这些场景看的是**字节数**,而写作平台的字数限制看的是*字符数,两者不能混用。
行数 ≠ 段落数。 从网页或 PDF 复制文本时,经常每行都带一个换行符,于是「行数」很大而「段落数」只有几个。判断文章结构应该看段落数,而检查代码、清单这类内容才看行数。
字符数 ≠ 显示宽度。 一个汉字和一个英文字母都算 1 个字符,但在等宽字体里汉字占 2 个字符宽。做终端对齐、表格排版时,需要的是「显示宽度」而不是字符数。
Emoji 的计数陷阱。 在 JavaScript 里 '😀'.length 等于 2,因为 UTF-16 用一对代理项表示它。本工具按 Unicode 码点计数,所以 😀 记作 1 个字符——这与用户的直觉一致。但要注意,如果是 👨👩👧 这样的零宽连接符组合序列,它由 5 个码点组成,本工具会如实记为 5。
| 场景 | 常见限制 | 说明 |
|---|---|---|
| 短信 | 70 字符 / 条 | 中文按 UCS-2 编码,一条短信 70 个字符,超出按多条计费 |
| 微博 | 140 字 | 中文与英文按字符计 |
| Twitter / X | 280 字符 | 按字符计,一个汉字算 1 个 |
| 微信公众号标题 | 64 字 | 超出会被截断 |
| 小红书正文 | 1000 字 | 标题 20 字 |
| 知乎回答 | 无硬性上限 | 但过长的内容会影响完读率 |
| 网页 meta description | 约 155 字符 | 超出部分搜索引擎会截断 |
各平台规则会调整,发布前建议以平台当前的官方说明为准。用本工具先量一遍,可以避免辛苦写好的文案被截断。
本工具按中文 300 字/分钟、英文 200 词/分钟估算阅读时间。这个速度接近成年人的平均默读速度,用于给文章标注「预计阅读 X 分钟」比较合适。实际速度因人而异:技术文档、含大量公式的内容会慢很多,而通俗故事类会更快。
提示:统计口径以 Unicode 标准分类为依据。不同平台对「字数」的定义可能不同(有的把标点算入、有的不算,有的把连续英文按词计),投稿前请先确认目标平台的规则。
最多能统计多长的文本?
阅读时长是怎么估算的?
输入的内容会被上传吗?
统计结果可以导出吗?
为什么「其他字符」有时候不为零?
中文需要单独统计「词数」吗?
英文单词是怎么切分的?
标点符号包含哪些字符?
Emoji 会被统计成几个字符?
「行数」和「段落数」有什么区别?
为什么字符数和字节数不一样?
字符总数是怎么计算的?