在 X(Twitter)上控制 280 字符限制
您在写一个推文串,第二条推文有 312 个字符,需要在不失去重点的情况下删减。将推文粘贴到这里,实时关注字符计数,直到削减到 280 或以下。请注意:X 无论长度如何都将 URL 计为 23 个字符,表情符号计为 2 个,因此简单的字符计数会略微低估剩余空间。请参阅常见问题中的 Twitter 计权说明。
粘贴任意文本,实时查看字数、字符数、行数、段落数、句子数和阅读时间。无需上传,无需注册,不离开您的浏览器。
一个免费的浏览器内字数统计工具。粘贴文章、推文草稿、meta 描述或 4000 字的博客文章,即可实时获取字数、含/不含空格字符数、行数、段落数、句子数以及预估阅读时间。文本不会离开您的设备。
它存在的意义在于那些细小而常见的时刻:您在 X 上超出了 280 字符限制 12 个字符,meta 描述是 187 个字符,Google 即将截断它,大学申请说"最多 500 字",而 MS Word 的字数统计对话框藏在两层菜单之下。粘贴,查看,修改,继续。
计数这件事比看起来更有趣。维基百科关于字数统计的文章指出,MS Word、Pages 和 Google Docs 对同一文档返回的数字略有不同,主要是因为各自对连字符复合词、破折号和内联脚注的处理方式不同。我们会如实告知使用的规则,让您能将结果映射回自己信任的编辑器。
字数通过按空格分割并过滤空条目来统计,与 MS Word、Google Docs 和大多数博客平台底层使用的方法相同。对英语、法语、西班牙语等以空格分词的语言来说,这种方式快速且足够准确。权衡之处在于:它无法正确统计中文、日文、韩文或泰文的字数,因为这些文字系统的词语之间没有空格。要在所有语言中获得规范准确的分词,正确的工具是Intl.Segmenter,它实现了 Unicode UAX #29(文本分段)中的算法。当输入内容看起来需要时,我们会显示 CJK 提示。
字符数有两种统计方式:含空格(字符串中的每个码位)和不含空格(不含 ASCII 空格、制表符和换行符)。您需要哪个数字取决于您要检查的限制。页面标题、meta 描述和短信计算空格。Twitter/X 有其自己的规则,详见常见问题。我们还会使用字形集群报告可见字符数,因此占用 7 个码位的家庭表情符号对人类读者来说仍计为一个字符。
行数、段落数和句子数构成面板的其余部分。行按换行符分割,段落按空行(一行或多行连续空行)分割,句子按后跟空白字符的 .、! 和 ? 分割——对大多数散文来说能给出正确答案,但会将"Mr. Smith said hello"错误地计为两个句子,将"i.e."计为新句子的开头。没有可靠的句子分割器能在 200 行 JavaScript 内实现;如果文本中有大量缩写,请将句子数视为粗略估计。
一个文本面板,六个实时计数。无需安装,无需上传,无需账户。
从 MS Word、Google Docs、电子邮件客户端、短信草稿或 CMS 编辑器中粘贴。或点击上传加载 .txt 或 .md 文件。点击示例按钮可插入一段示例文字,先让计数器动起来。粘贴会去除格式,这正是您想要的,因为只有文本会被统计。
每个计数在您输入或编辑时实时更新。字数、含空格字符数、不含空格字符数、行数、段落数、句子数和阅读时间全部同时可见。阅读时间估算基于普通散文每分钟 230 词。还有一个 CJK 检测器,当基于空格的字数统计可能低估您的内容时会发出提示。
按复制将整理后的文本复制到剪贴板,或使用计数标签复制特定数字。下载将文本保存为 .txt 文件。如果需要不同的统计规则(例如将连字符词视为一个词),调整输入即可,计数器会自动更新,服务器端没有任何需要配置的内容。
您在写一个推文串,第二条推文有 312 个字符,需要在不失去重点的情况下删减。将推文粘贴到这里,实时关注字符计数,直到削减到 280 或以下。请注意:X 无论长度如何都将 URL 计为 23 个字符,表情符号计为 2 个,因此简单的字符计数会略微低估剩余空间。请参阅常见问题中的 Twitter 计权说明。
500 字的个人陈述,4000 字的文学论文,250 字的会议摘要。大多数机构将每个以空格分隔的词(包括连字符复合词视为一个词)计为一个字。这与我们的统计方式一致。Common App 文章限制为 650 字,要求严格;与其限制相差 10 字可能就是提交成功与被拒绝的区别。
Google 在约 60 个字符处截断页面标题,在移动端有时更早。Meta 描述在约 160 个字符处被截断。两者都是含空格的字符计数。将草稿粘贴到这里,关注计数器,在截断点之前让关键词出现。同样的规则适用于 Open Graph 标题和 Twitter card 描述。
标准短信在 7 位 GSM 编码下为 160 个字符;如果包含一个 GSM 范围外的字符(例如表情符号或弯引号),每段就降至 70 个字符。iOS 上的推送通知在锁屏预览中约 178 个字符处被截断。您的文本在 159 个字符时恰好一条短信,在 161 个字符时会分成两条,计数器会精确告知临界点在哪里。
Medium 和 Substack 等博客平台在文章顶部显示阅读时间估算。标准算法是总字数除以 230(成人阅读普通散文的典型速度),向上取整到最近的分钟。含代码块或数学公式的技术内容阅读较慢,约每分钟 100 词,所以这个估算对工程类文章会偏高。一篇 1200 字的教程大约是 5 分钟的阅读量。
您写了一份 1400 字的草稿,但简报要求在 1000 字以内。粘贴原稿,在另一个标签页粘贴精简后的版本,就能看到确切删减了多少。如果需要并排对比显示哪些句子移动或改写(而不仅仅是字数差),我们的 compare-text 工具可以满足这一需求。当您同时需要两个指标时,可以配合使用。
最常让工具出错的计数场景,以及我们的处理方式和需要注意的事项。如果某个计数结果看起来奇怪,答案通常在这里。
| Topic | What this tool does |
|---|---|
| 空格分割 vs Unicode 分词 | 我们按空格分割,速度快,且与英语的 MS Word/Google Docs 一致。规范准确的替代方案是 Unicode UAX #29,在 JavaScript 中通过 Intl.Segmenter 实现。当语言覆盖比速度更重要时,请使用它。 |
| 无空格分词的 CJK 语言 | 中文、日文、韩文和泰文词语之间没有空格。基于空格的统计对整个段落几乎只返回 1。对这些语言来说,字符计数是有意义的指标,在这里能正确工作。如需真正的 CJK 字数统计,请使用 Intl.Segmenter。 |
| 表情符号与 Unicode 码位 | 家庭表情符号 👨👩👧👦 看起来是一个字符,但实际上是 7 个 UTF-16 码位,由零宽连接符串联。我们使用字形(可见字符)来统计人类友好的数字,并单独统计码位。拇指表情符号上的肤色修饰符是一个字形,但两个码位。 |
| Twitter/X 字符计权 | X 对每个字符加权:大多数 ASCII 计为 1,表情符号和 CJK 计为 2,URL 无论长度都锁定为 23。我们的字符计数是原始计数。每使用一个表情符号,大约从 280 的预算中扣减 7。 |
| 推文中的 URL 和 @mentions | X 通过 t.co 将每个 URL 压缩为 23 个字符,无论实际链接多长。@mentions 按其字面长度计算。我们显示原始长度,因此含两个长 URL 的推文在这里读起来会比 X 报告的更长。 |
| 弯引号与直引号 | "弯曲"和"直"引号是不同的 Unicode 字符,但各计为一个字符。在大多数字体中看起来相同;从 MS Word 或 Pages 粘贴通常会悄悄切换到弯引号。如果粘贴代码,请先转换回直引号。 |
| 行尾空格和空行 | 行尾的空格仍计入字符数。文档末尾的换行符计为一行。段落之间的空行计入行总数,但在段落统计中起分隔作用。 |
| 编码(UTF-8)与字节长度 | 大多数提到"字符限制"的 API 指的是 Unicode 字符,但少数指的是 UTF-8 字节。表情符号在 UTF-8 中是 4 个字节,CJK 字符是 3 个字节,带重音的拉丁字母是 2 个字节。如果您的限制以字节计,我们的字符计数会偏低。Twitter 是著名的中间地带:既不是字节也不是字符,而是其自己的加权方案。 |
字数是文本中以空格分隔的词元数量,因此"hello world"是 2 个词。字符数是单个字符的数量,"hello world"含空格是 11 个字符,不含空格是 10 个字符。不同平台关注不同的数字:学术论文使用字数,短信和推文限制使用字符数,SEO 标题标签也使用字符数。计数器会同时显示两者,您可以根据场景选择适合的数字。
它将输入按空白字符(空格、制表符、换行符)分割,并统计非空部分。因此"fast-paced"是一个词,"well known"是两个词,"isn't"是一个词。这与英语散文中的 MS Word 和 Google Docs 保持一致。权衡之处在于,它无法正确处理中文、日文或韩文,因为这些语言不用空格分隔词语。对于所有语言的规范字数统计,现代浏览器内置的 Intl.Segmenter 实现了 Unicode 的词边界算法。
阅读时间 = 字数 ÷ 230 词/分钟,向上取整到最近的分钟。230 wpm 是成人读者阅读普通散文的合理中值;已发表的估算范围在非技术材料每分钟 200 到 250 词之间。含代码块、公式或陌生术语的技术写作会让读者速度降低到约 50 到 100 词/分钟,因此该估算对工程或科学内容会偏高。如需针对小众受众进行更精确的计算,请用您的字数除以其实际阅读速度。
对于字数,不能。CJK 语言词语之间没有空格,因此基于空格的字数统计对整个 CJK 段落几乎只返回 1。字符计数仍然准确(一个 CJK 字符就是一个字符),而这通常才是这些语言的关键指标:日语文章的限制是字符数,不是词数。如果需要真正的 CJK 词数统计,现代浏览器中的 Intl.Segmenter API 实现了 Unicode 的词分段算法,能正确处理 CJK、泰文等无空格文字系统。
不会。计数器完全在您的浏览器中运行,不会向服务器发送任何内容,不记录,不存储。您可以粘贴机密草稿、未发表的文章或任何私人内容,关闭标签页后不会留下任何痕迹。要验证,请打开 DevTools,切换到 Network 标签,边输入边观察,没有任何出站请求。唯一的依赖是浏览器自身的 JavaScript 引擎,以及可选的 Intl.Segmenter(用于字形计数)。
大体上是的。X 使用自定义计权方案:大多数基本拉丁字符、数字和常见标点计为 1,而实际上所有其他字符(表情符号、CJK、重音字符)在 280 字符预算中计为 2。确切算法见其字符计数文档;它使用码位范围而非字形集群,因此旗帜表情符号(由两个地区指示符码位组成)实际上计为 4。URL 无论长度如何都按 23 个字符处理。我们的字符计数是原始计数,不是加权计数。
免费,无需任何注册。没有账户,没有试用期,没有每日粘贴量限制。它作为普通 JavaScript 在浏览器中运行,因此页面加载后即使断网也能继续统计。粘贴文本,查看数字,关闭标签页。没有任何功能锁在登录后面,也没有要向您推销的付费计划。
对英语散文来说,统计结果相近,但您不需要打开任何应用。无需启动软件,无需加载文件:粘贴到一个输入框,数字在您输入时实时更新。MS Word 将字数统计藏在状态栏或菜单中,一次只显示一个数字。这里同时显示字数、字符数、句子数、段落数、行数和阅读时间,而且您粘贴的任何内容都不会被上传到任何地方。
是的,两者都同时显示,外加句子数、段落数和行数。需要哪个数字取决于限制要求。SEO meta 描述、标题标签和短信包含空格,请使用含空格的数字。某些学术或设计任务要求不含空格的字符数,那就是另一个数字。将两者并排显示,省去您猜测表单含义的麻烦,因为标签很少说清楚。
可以。粘贴草稿,实时关注字符计数,逐步削减。Meta 描述通常在 155 到 160 个字符之前是安全的,超过就会被 Google 截断;标题标签的限制接近 60 个字符。基本 GSM 编码的短信上限是 160 个字符。一个注意事项:X/Twitter 的计算不是直接相加,它对表情符号和非拉丁字符加权,并将 URL 锁定为 23,详见上方的 X 常见问题。
实时统计。每个计数在每次按键时都会更新,没有"统计"按钮可点,没有延迟。输入一个词,字数增加;删除一行,行数减少。完全在浏览器中运行,这意味着页面加载后断网仍可使用,布局会自适应手机屏幕,随时随地都能检查草稿。
您的文本不会离开浏览器。统计、分割和渲染都在您的设备上运行。我们不会上传文本,不记录,也不通过任何第三方服务发送。您可以粘贴机密草稿、未发表的文章或其他私人内容,关闭标签页后不会留下任何痕迹。要验证,请打开浏览器 DevTools,切换到 Network 标签,边输入边观察,没有任何出站请求。唯一的依赖是浏览器自身的 JavaScript 引擎,以及可选的 Intl.Segmenter(用于字形统计)。如果您需要并排文本 diff、大小写转换、行排序或删除重复行,这些工具只需点击一下即可使用,遵循相同的浏览器内隐私策略。