要不要把空格算进去
投稿和作业的标准并不统一。写着“含空格2000字”,那么空格和标点都要算;写着“不含空格”,就只数看得见的字。没有说明的时候,按含空格来准备比较稳妥,因为提交系统大多是把输入框里的字符串原样数一遍。
换行也算空格。每分一个段落就多一个字,所以稿子卡在上限时,删掉一个空行就能腾出位置。
一个表情符号算几个字
汉字无论用哪种方式数,结果都一样。有分歧的是表情符号。一个笑脸在程序里要占两格,像一家人那样几个人拼起来的表情能占到八格,加了颜色的旗帜和换了肤色的手势也是如此。
这个工具按你看到的样子算一个字。设字数上限的服务大多也是这个标准,所以这里的数字和那边数出来的对得上。
字节数为什么和字数不同
一个汉字在 UTF-8 里占 3 个字节,英文和数字占 1 个,表情符号占 4 个。同样是 100 个字,中文写出来是 300 字节,英文写出来是 100 字节。
需要看这个数字的场合是固定的。数据库字段设成VARCHAR(255)时,那个 255 常常指字节而不是字数;短信一条能装多少,也是按字节算的。字数明明还有富余却存不进去,或者发出去被截断,就看这一栏。
词数是怎么数出来的
英文这类用空格分词的语言,按空格数一遍就行。中文和日文没有空格,需要另外找词的边界,所以一句连着写的中文也能数出词数。这个结果适合估量篇幅,遇到人名、专有名词或者网络新词时会有出入。