文字数
テキストに含まれる文字の総数。スペースや改行を含むかどうかは文脈によって異なる。
文字数とは、テキストを構成する文字の総数を指します。日本語では 1 つのひらがな、カタカナ、漢字がそれぞれ 1 文字としてカウントされ、英語ではアルファベット 1 文字が 1 文字です。スペースや改行、句読点を含めるかどうかは文脈によって異なり、この「何を 1 文字と数えるか」という定義の違いが、文字数カウントを複雑にしている根本的な要因です。
文字数のカウント方法は利用場面ごとに大きく異なります。X (Twitter) は全角・半角を問わず 1 文字として扱い、上限は 280 文字です。一方、Google 広告の見出しは 30 文字、メタディスクリプションは約 120 文字が推奨されます。レポートや論文では「空白を除く文字数」が求められることも多く、同じテキストでもカウント結果が変わります。文章術の書籍でも、文字数の管理は読みやすさの基本として取り上げられています。
プログラミングにおける文字数カウントには技術的な落とし穴があります。JavaScript の String.length は UTF-16 コードユニット数を返すため、サロゲートペアで表現される絵文字や一部の漢字を 2 文字として数えます。正確な文字数を得るには [...str].length のようにスプレッド構文を使う方法がありますが、これでも結合文字を含む書記素クラスタは正しくカウントできません。Intl.Segmenter を使えば、人間が認識する「見た目の 1 文字」単位で正確にカウントできます。
よくある誤解として、「文字数」と「バイト数」の混同があります。UTF-8 では日本語 1 文字が 3 バイト、ASCII 文字が 1 バイトを消費するため、同じ文字数でも言語によってデータサイズは大きく異なります。データベースの VARCHAR 定義やファイルサイズの見積もりでは、文字数ではなくバイト数を基準にする必要がある場面も少なくありません。
日本語と英語では、同じ情報量を伝えるのに必要な文字数が異なる点も重要です。一般に日本語は漢字の表意性により、英語の約 60-70% の文字数で同等の内容を表現できます。多言語対応のシステムでは、この文字数の差を考慮した UI 設計が求められます。
文字数カウントツールを活用すれば、入力テキストの文字数をリアルタイムで確認でき、各プラットフォームの制限超過を未然に防げます。特に SNS 運用やコピーライティングの現場では、制限内で最大限の情報を伝える技術が成果を左右します。ライティング入門書でも、文字数を意識した執筆の重要性が解説されています。