テキスト統計
テキスト文字・バイト・単語・行・文・段落数を、多言語に対応した単語分割で集計します。
- 文字数
- 文字数(空白除く)
- バイト数(UTF-8)
- 単語数
- 行数
- 文数
- 段落数
- 読了時間
このページの内容
テキスト統計ツールとは?#
テキスト統計ツールは、テキストのブロックを読み込み、中身が実際に何であるかを告げます。文字数、単語数、文数、バイトサイズ、読了にかかるおおよその時間。これは、噛み付いてくる制限にぶつかるまで些細に思えます — 1 文字だけ超過したツイート、160 バイトを黙って超えるメタディスクリプション、maxlength が表示文字数ではなく UTF-8 バイトで測られる入力欄、「2 分で読了」バッジが黙って間違っている下書き。
厄介なのは「単語」が普遍の概念ではないことです。英語の単語はスペース区切りですが、中国語・日本語・タイ語は違います — 你好世界 は 4 文字かつ 4 単語で、スペースは一つもありません。素朴な .split(' ') はその文字列全体を「1 単語」と報告します。本ツールは CJK 漢字、ひらがな、カタカナ、タイ語は 1 文字ごとに、ラテン文字、キリル文字、ギリシャ文字、デーヴァナーガリー、ハングルは空白区切りのランで数えるため、スクリプトをまたいでも単語数が正直です。バイトサイズは(string.length ではなく)実際の UTF-8 エンコーディングを使い、サーバーやデータベース列がバイトを数える場面で重要な値を示します。
すべてブラウザ内で動きます — バックエンドはなく、何もアップロードされません。
使い方#
- 左側の入力欄にテキストを入力または貼り付けます。あらゆるスクリプトを受け付け、改行を保持します。
- 数字を動かしてみたいだけならサンプルで既製の文章を読み込み、クリアで入力欄を空にします。
- 右側のパネルを読みます。8 つの行が入力に従ってリアルタイムに更新されます。
- 文字数 — スペースと改行を含む、コード単位の総数。
- 文字数(空白除く) — 同じ値からすべての空白文字を引いたもの。
- バイト数(UTF-8) — UTF-8 バイト長。データベースの
VARCHAR(n)や HTTP ヘッダー制限が実際に見る数値。 - 単語数 — スクリプト対応のカウント(CJK/かな/タイ語は 1 文字ごと、それ以外は空白区切りのランごと)。
- 行数 — 改行区切りの行。
- 文数 — スクリプトをまたぐ終止符で分割(
.!?に加え CJK の。!?、アラビア語の؟۔)。 - 段落数 — 空行で区切られたブロック。
- 読了時間 — 単語数を 1 分間約 200 語で割り、最低 1 分に切り上げ。
主な機能#
- スクリプト対応の単語カウント。 CJK 漢字、ひらがな、カタカナ、タイ語は 1 文字を 1 単語として数え、ラテン文字、キリル文字、ギリシャ文字、デーヴァナーガリー、ハングルは空白区切りのランで数えます。混在文でも壊れた値ではなく、もっともな合計が出ます。
- 実際の UTF-8 バイトサイズ。
你好は 2 ではなく 6 バイトです — バイトカウンタはストレージと転送が実際に払うコストを反映します。 - スクリプトをまたぐ文分割。 CJK とアラビア語の終止符を認識するため、
今天天气很好。明天见。は 1 つではなく 2 文と数えます。 - ライブでクリック不要。 数字はすべてのキー入力で再計算され、忘れる生成ステップはありません。
- マシン上に留まる。 貼り付けたテキストはページから出ません — リクエストも、ログも、バックエンドもありません。
実例#
古典的なパングラムを貼り付けます。
The quick brown fox jumps over the lazy dog.
パネルは次を報告します。
- 文字数: 44(ピリオドと 8 つのスペースを含む)
- 文字数(空白除く): 36
- バイト数(UTF-8): 44(すべての文字が ASCII のため、バイト数は文字数に等しい)
- 単語数: 9
- 行数: 1
- 文数: 1
- 段落数: 1
- 読了時間: 1 分(9 語は 200 よりずっと少ないが、空の「0 分」が表示されないようカウンタは最低 1 分に切り上げる)
代わりに中国語の文 你好世界。 を入れると、単語数は(漢字 1 文字につき 1 単語で)4 になり、バイト数は 13 に跳ね上がります — 3 バイト文字 4 つと 1 バイトの句点の合計です。「4 文字」と「13 バイト」のこの差こそ、フォーム送信が問題を起こす前に表面化するために本ツールが存在する理由です。
よくある質問#
バイト数が文字数よりずっと大きいのはなぜですか?#
UTF-8 が非 ASCII 文字を複数バイトでエンコードするためです。基本ラテン範囲は 1 バイト、ラテン拡張(à、ñ、ç)は 2 バイト、ほとんどの CJK 漢字とインド系スクリプトは 3 バイト、絵文字と星面は 4 バイトです。バイト予算を強制するフォームやデータベースはより大きな数を見るため、本ツールも同じようにバイトを報告します。
中国語テキストの単語数が高く感じます。正しいですか?#
おそらく正しいです。CJK スクリプトはスペースで単語を区切らないため、1 文字ごとのカウントが慣習的で再現可能な測り方であり — ほとんどのエディタやワープロが CJK の長さを報告する方法と一致します。文字カウントではなく言語的な単語分割が必要な場合は、/en/text/word-frequency/ ツールの CJK モードがブラウザのセグメンタを使い、実際の単語境界で分割します。
「読了時間」はどんな読書速度を前提にしていますか?#
1 分間約 200 語で、平易な散文の成人黙読速度として広く使われる平均値です。大まかな推定であり — 技術的な内容、コード、外国語はもっと遅くなります。値は常に最低 1 分に切り上げられるため、短いスニペットが意味のない「0 分」とはなりません。
コードスニペットの単語も散文と同じように数えますか?#
はい。getUserById のような識別子は、中にスペースや句読点がないため 1 トークンとして扱われます。getUserById を 3 単語として数えたい場合は、まず /en/text/transform/ ツールのケース分割に通してください。