字数统计
实时统计字数、字符和行数。
这个工具能做什么
把一段文字粘进输入框,工具会实时给出字符数(区分含空格与不含空格)、中文字数、英文单词数、行数,以及这段文字在 UTF-8 编码下占用的字节数。它解决的是「心里没底」的问题:写文案时不知道有没有超字数,做表单校验时不确定用户输入会不会撑爆数据库字段,或者想知道一段内容传输时到底占多少流量。逐字更新,不用点按钮,边改边看,改完立刻能对上。
不同口径的数字背后是不同的计数规则。字符数按 Unicode 码点计,一个汉字、一个字母、一个标点各算一个字符,含空格与不含空格的差别只在于是否把空白字符计进去。中文字数只统计落在 CJK 汉字区间(主要是 U+4E00–U+9FFF 这段常用汉字)里的方块字,字母、数字和标点都不计入。英文单词数按空白和标点切分,把连续的字母数字序列各算作一个词。字节数则是把文本按 UTF-8 编码后数字节:ASCII 字符占 1 字节,绝大多数汉字占 3 字节,emoji、部分生僻字这类超出基本多文种平面的字符占 4 字节。所以同一段「你好abc」,字符数是 5,字节数却是 3×2+3=9。
最常见的用法是控制字数。比如公众号标题要压在几十字以内、微博一条正文有字数上限、电商详情页某个字段要求不超过 30 字,把草稿贴进来一眼就知道差多少。字节数在后端场景里更关键:MySQL 里 varchar(50) 在 utf8mb4 下按字符算能存 50 个字,但如果字段或协议是按字节限制的,一个汉字就吃掉 3 个字节,50 字节只够放十几个汉字,提前量一下能避开「本地测试没问题、线上一存就被截断」的坑。短信也类似,纯中文按 70 字一条、超出后拆分计费,先估算字节数能少踩计费的雷。
有几个容易误解的点。一是 emoji 和部分特殊字符在底层由代理对(surrogate pair)表示,不同工具对「一个 emoji 算几个字符」的口径不一样,按码点还是按码元计会导致数字差几个,看到字符数比肉眼多通常就是这个原因。二是全角空格、不换行空格这类不可见字符也会计入字符数和字节数,从网页复制的文本尤其常见,数字对不上时先检查有没有混入它们。三是这里的中文字数只认汉字、不含中文标点,如果你的「字数」定义要把标点也算进去,应以字符数为准。整个统计都在浏览器本地完成,文本不会上传,贴敏感内容也不用担心。
字数统计是一个免费的在线工具,打开网页就能用,不用下载也不用注册。平时大家搜的“字数统计”、“字符统计”、“文字计数”,说的都是这个。
常见使用场景
- 写公众号标题时把字数控制在限制内
- 检查录入内容会不会超出数据库字段长度
- 估算纯中文短信按字节会拆成几条
- 核对文案或作业是否满足字数要求
- 查看一段文本转 UTF-8 后占多少字节
使用方法
- 把内容粘贴到输入框(生成类工具直接设置选项)。
- 按需要选择选项,点操作按钮。
- 结果出现在下方,点「复制结果」即可带走。