🔡 日本語文字数カウンター(文字数・バイト数)
日本語テキストを貼り付けると、スペース有無の文字数、UTF-8・Shift-JISのバイト数、行数、全角・半角の内訳を即座に集計します。
このツールとは?
日本語の文字数を数えるのは見た目ほど簡単ではありません。1つの「文字」は半角のラテン文字(Shift-JISで1バイト)、全角のかなや漢字(Shift-JISで2バイト)、全角のラテン文字(同じく2バイト)のいずれかになり得ます。フォーム、データベース、レガシーシステムでは文字数ではなくバイト数で上限を示すことが多いため、30文字に収まる文字列が30バイトのフィールドを溢れることがあります。文字数とバイト数の両方を、UTF-8とShift-JISの両方で知ることが、日本語のWebフォーム、データベース列の設計、SMSやTwitterの文字数制限の執筆に不可欠です。
この文字数カウンターは、スペース有無の文字数、行数、UTF-8バイト数、Shift-JISバイト数、全角・半角の内訳を報告します。日本語にコピーをローカライズするライター、データベースフィールドのサイズを決める開発者、バイト上限のある日本の官公庁・銀行フォームを記入するすべての人向けです。かな変換やローマ字化にはかな変換ツールとローマ字変換ツールをどうぞ。
異なる文字種がカウントにどう影響するかの対応表は以下の通りです:
| 文字種 | 例 | UTF-8 | Shift-JIS |
|---|---|---|---|
| ASCII(半角英数字) | A, 1, ! | 1 byte | 1 byte |
| かな・漢字(全角) | あ, 漢 | 3 bytes | 2 bytes |
| 全角英数字 | A, 1 | 3 bytes | 2 bytes |
| 絵文字 | 😀 | 4 bytes | 非対応 |
仕組み
カウンターは入力を1回走査し、各文字について UTF-8 バイト長(ASCII は1、Latin-1 補助とギリシャ文字は2、かな・漢字・大部分の記号は3、絵文字や面外文字は4)と Shift-JIS バイト長(ASCII と半角カタカナは1、全角かな・漢字・全角ラテン文字は2)を記録します。また各文字を Unicode ブロックで全角か半角かに分類し、スペースと改行を別々にカウントして「スペースなし」の合計を算出します。
全角・半角を分類するために使う Unicode 範囲の表です:
| 幅 | Unicode ブロック | 典型的な内容 |
|---|---|---|
| 半角 | U+0000–U+007F, U+FF61–U+FFDC | ASCII、半角カタカナ |
| 全角 | U+3040–U+30FF, U+4E00–U+9FFF, U+FF00–U+FF60 | かな、漢字、全角ラテン |
| その他 | 絵文字、結合マーク | UTF-8 バイト長で計上 |
すべてのカウントはブラウザ内でローカルに実行されるため、機密テキストでもデバイスから離れません。テキストを前処理 — 幅の正規化、かな変換、ローマ字化 — するにはかな変換ツールを先に通してください。
使い方
- 日本語(または混在)テキストを入力ボックスに貼り付けます。
- 入力または貼り付けると同時にカウンターが即座に更新されます。
- スペース有無の文字数を確認します。
- フォームやデータベース上限のために UTF-8 と Shift-JIS のバイト数を確認します。
- 全角・半角の内訳で幅の正規化計画を立てます。
よくある質問
なぜ2種類のバイト数があるのですか?
システムによって日本語のエンコードが異なります。現代のWebページは UTF-8(漢字が3バイト)を使い、古い日本の政府・銀行システムは Shift-JIS(漢字が2バイト)を使います。どちらのシステムが入力をチェックしているかに合わせられるよう、両方を報告します。
フォームが「30バイト」と言うとき、どちらのエンコーディングですか?
ほぼ常に Shift-JIS バイト数です。日本のバックエンドシステムが今も使うレガシーエンコーディングだからです。この場合、全角文字1文字につき2バイトで計画してください。
絵文字はどう数えられますか?
絵文字は通常 UTF-8 で4バイトで、基本の Shift-JIS では表現できないため、レガシーフォームで入力拒否されることがよくあります。カウンターは UTF-8 バイト数を表示するため、見つけやすくなります。
文字数とともに単語数もカウントされますか?
日本語には単語間のスペースがないため、スペース区切りの単語数は信頼できず、文字数・バイト数に焦点を当てています。文字数が日本語テキストの標準的な長さ指標です。
全角と半角の違いは何ですか?
半角文字(A、1、ア)は細く、Shift-JIS で1バイトです。全角文字(A、1、ア、日)は広く、2バイトです。全角ラテン文字・数字は日本語IMEで生成され、提出前に半角に正規化されることが多いです。
テキストはサーバーに送信されますか?
いいえ。すべてのカウントはブラウザ内の JavaScript で行われます。アップロード・保存・記録されるものはなく、プライベートなテキストや下書きを安全に貼り付けられます。
ヒントとアドバイス
日本のフォームが「30バイト受け付ける」と言うとき、ほぼ常にShift-JIS バイト数を意味します。政府や銀行システムが今も内部で使うレガシーエンコーディングだからです。したがって全角文字1文字につき2バイトで計画してください。全角数字・ラテン文字(0123、ABC)は Shift-JIS で2バイト消費しますが、半角の同等文字は1バイトです。提出前に半角に正規化するとスペースを節約できます。絵文字は UTF-8 で4バイトで、レガシーフォームでは拒否されることが多いです。Twitter のような Unicode 対応システムでは UTF-8 のカウントが重要です。日本語の単語数が必要な場合、日本語にはスペースがないためスペース区切りの単語数は信頼できず、文字数が標準的な指標です。カウント前に幅をきれいにするには、テキストをかな変換ツールに通してください。
関連ツール
ひらがな⇄カタカナ変換
ひらがなをカタカナへ、カタカナをひらがなへ即座に変換。全角対応の双方向かな変換ツールをブラウザ内で無料でご利用いただけます。登録不要。
ローマ字変換ツール
ひらがな・カタカナをヘボン式、訓令式、日本式のローマ字に変換。3方式すべてに対応する無料のブラウザベースツール。即座に、プライベートに。
ふりがな生成ツール
日本語テキストの漢字にふりがな(読み仮名)を自動付与。一般的な単語辞書を使ったブラウザ内の無料ツール。登録不要、即座に処理。
送り仮名ヘルパー
日本語の一般的な動詞・形容詞の正しい送り仮名をチェック。執筆者、学習者、校正者向けの無料ブラウザツール。辞書に基づく判定。
漢字読み検索
一般的な漢字の音読みと訓読みを検索。意味と代表的な語彙も表示する無料のブラウザベース漢字読み辞書。登録不要、即座に。
文字カウント
文字数・単語数・文数・段落数をリアルタイムでカウント。読了時間の目安も表示され、ブログやSNS投稿の文字数管理に便利な無料ツールです。
文字数カウンター
単語数、文字数、文数、読書時間をカウントする無料ツール。レポート、記事、ブログの執筆に便利なオンライン文字カウントツールです。
出典と参考文献
- Unicode Consortium. UTF-8 エンコーディング仕様.
- Wikipedia. Shift-JIS エンコーディング.
- 文化庁. 文字コードと日本語.
制限事項
このツールは推定バイト数を提供します。古い環境では実際のエンコーディングと完全に一致しない場合があります。
- 結合文字列(基底+結合マーク)の正規化
- 異体字選択シーケンスの正確なバイト計算
- EUC-JP や ISO-2022-JP など他の日本語エンコーディング
厳密なバイト数が求められる場合は、対象システムと同じエンコーディングで実際に保存して検証してください。