字数统计

把一段文字实时统计出字符、单词、行、段落和 UTF-8 字节数,中英文都算。

65
字符数
不含空格 57
30
单词数
中文 24 · 英文 6
2
行数
非空 2
1
段落
空行分段
121
字节 (UTF-8)
≈ 编码后大小

字数统计

字数统计是上面一排数字卡、下面一个大文本框的页面:把文字粘进框里,字符数、单词数、行数、段落数、字节数立刻出来,全程不用点按钮。它解决的是「投稿有字数上限、接口有字节限制、中英混排到底算几个数」这类数数的问题。

常见用途是给有长度限制的文案数数(简介、标题、评论)、核对粘贴进来的内容夹了多少空行、估算一段中文编码成 UTF-8 后占多少字节。它把「字符数」和「不含空格」分成两个口径展示,省得自己一笔一笔数。

计数规则很直白:中文一个字算一个字符、也记作一个「词」;英文按空格和标点切词,带撇号或连字符的词(比如英文里的缩写)当一个词,数字同样计入英文词数。

怎么用

  1. 粘进文本把要统计的文字放进下方文本框,占位提示是「在此输入或粘贴文本…」。框里预置了一段中英混合示例,直接覆盖掉就行。
  2. 读上方数字框上方是一排统计卡:字符数(小字标「不含空格 …」)、单词数(标「中文 … · 英文 …」)、行数(标「非空 …」)、段落(标「空行分段」)、字节 (UTF-8)(标「≈ 编码后大小」)。边打字边变。
  3. 分清两个字符口径要卡「不含空格」的字数,看「字符数」卡片下方那行小字;要的是含空格的总长,就看卡片中间那行大数字。两者相减就是空格数量。
  4. 看字节估算大小关心编码后占多少空间就读「字节 (UTF-8)」这张卡:一个汉字通常占 3 字节、英文和数字占 1 字节,用它估接口请求体大小最直接。

示例

输入
小蜜蜂 xmi4 在线工具
输出
字符数 13(不含空格 11)· 单词数 8(中文 7 · 英文 1)· 行数 1 · 字节 27

13 个字符里含 2 个空格;7 个汉字 + 1 个英文词 = 8;27 字节是这段文字按 UTF-8 编码后的长度。

深入一点

字符、单词、字节到底差在哪

字符数数的是「代码点」个数,空格和标点都算;单词数是中文逐字(每个汉字当一词)加上英文分词后的个数;字节是这段文字按 UTF-8 编码后的二进制长度。三者口径不同,别互相代入。

「不含空格」只去掉空白字符(空格、制表符、换行),中文标点、英文句号这些仍然计入字符数。

为什么一个中文比一个英文「重」

字节卡按 UTF-8 计算:汉字多数是 3 字节,常见 emoji 是 4 字节,英文字母和数字是 1 字节。

所以限请求体大小时看字节,限标题或文案长度时看字符,两个别拿反——同样 100 的额度,装满中文比装满英文重得多。

行和段落是怎么切出来的

行按换行符切,Windows 的 \r\n、老 Mac 的 \r、Unix 的 \n 都认;段落按中间空一行来分。

「行数」含空行,「非空」小字是去掉纯空白行之后的行数。全空的文本里行数和段落数都记 0,不会虚报成 1。

注意事项

  • 统计全部在浏览器本地完成,文本不上传服务器。
  • 没有「保存」按钮,刷新或离开就清空,需要留存请自己复制到别处。
  • 几十万字符的超长文本实时统计会有一点延迟,属正常。
  • 英文分词以空格和标点为界,不带空格的连写英文会被当成一个词。

常见问题

一个汉字算几个字

在字符数和单词数里都各算 1,在字节里一般是 3。三个数分别看不同的卡片,别把它们当成同一个口径。

怎么只数中文不数英文

看「单词数」卡片下方那行小字里的「中文 …」数字,那个就是纯汉字的个数,英文另列在「英文 …」。

字数统计能不计标点吗

不能。只有「不含空格」这一个开关口径,它只去空白,逗号、句号等标点仍在字符数里。

段落数和行数一样正常吗

正常。如果文本里没有空行,段落数就等于非空行数(或整段为 1);只有出现空行分隔时两者才会明显不同。

粘贴进去数字没变是为什么

确认文字确实落在了文本框里而不是别处。统计只跟着文本框的内容走,框里没变,上面的数字自然不动。

空格到底算不算字数

两种都给:中间的「字符数」大数字含空格,下方「不含空格」小字是去掉空白的结果,想知道空格数就两者相减。

emoji 算几个字

算 1 个字符,但按 UTF-8 通常占 4 字节,所以你会看到字节卡的数明显高于字符卡,这是编码差异不是算错。

注册后可收藏工具、跨设备同步最近使用。