文字数が合わないとき、最初に3つの条件を揃える
文字数カウンターと提出する入力欄で数字が違う場合は、同じ原文を残し、まず空白・改行・絵文字をどう数えるか確かめます。この節の確認は、特定のカウンターに限らない一般的な方法です。
同じ原文を、それぞれの入力欄へ貼り付ける
手元のカウンターと提出欄に同じ文章をコピーします。題名や署名を一方にだけ含めていないか、貼り付け後に末尾へ改行が入っていないかを見比べます。
「空白を含む」「改行を含む」などの条件を揃える
カウンターに切り替えがあれば、提出先の説明と同じ設定にします。空白とは文字の間のスペース、改行とは行を変える区切りです。「空白を除く」場合も、半角・全角の両方を除くかは説明を確認します。
残る差が絵文字や濁点にあるか、小さな下書きで調べる
必要なら本番の原文とは別の下書きで、絵文字1つや改行1つを加え、数字がどれだけ増えるかを比較します。送信や公開は不要です。見た目では1文字の絵文字でも、数える仕組みによって2以上になることがあります。
確認の目印:原文と条件を揃えて数字が一致すれば、その組み合わせでは同じ条件で数えられています。差が残る場合は、数え方が違う可能性があるので、手元の数字だけで上限内と判断せず、提出先の規定と最終表示へ進みます。
提出先での最終確認と、カウント表示がない場合
応募フォーム、原稿の入稿先、SNSなどで上限を確認する一般的な手順です。個別サービスの仕様を検証した記事ではないため、提出先に説明がある場合はそのルールを優先してください。
入力欄の説明とヘルプを読む
本文だけか、題名・URL・署名も含むか、空白や改行も数えるかを確認します。「文字数」と「バイト数」は別です。バイト数はデータ量の制限なので、文字数の数字をそのまま当てはめないでください。
数字が表示されるなら、貼り付けたあとの値を見る
提出欄に原文を貼り、残り文字数や上限エラーを確認します。入力する前の手元の数字ではなく、貼り付け後の表示を見て判断します。試すだけなら送信ボタンを押す必要はありません。
数字が表示されないなら、公式の規定・指定カウンターを探す
入力欄周辺の注意、募集要項、ヘルプで数え方と指定の計測方法を確認します。見つからなければ、提出先の問い合わせ窓口へ「空白・改行・絵文字をどう数えるか」「どのカウンターを使えばよいか」を質問します。回答が得られるまで、手元の任意のカウンターを公式の数え方とみなしません。
削ったあとは、内容を読み返す
上限に合わせて調整したら、必要な文字・URL・改行を誤って消していないか確認します。再び提出欄へ貼り、表示やエラーが変わっていないか見直します。数字が合っても文章の意味や表示の範囲は別に確認してください。
空白・改行を数えるかで、同じ短文も変わる
この節は、手元のカウンターと提出欄の条件を揃えるための一般的な説明です。次の短文は、AとBの間に半角スペース、BとCの間に1回の改行があります。これは自作例で、特定サービスの結果ではありません。
A B C
| 条件 | この短文の文字数 |
|---|---|
| 空白も改行も含む | 5 |
| 半角空白だけを除く | 4 |
| 改行だけを除く | 4 |
| 半角空白と改行を除く | 3 |
同じ短文でも、除くものが変われば数字が変わります。この例で扱ったのは半角空白と1種類の改行だけです。全角空白・タブ・別の改行まで同じ扱いになるとは限りません。条件が分からない場合は、カウンターの説明か提出先のヘルプを確認してください。
補足:絵文字や濁点を、内部の数え方で比べた実測
文字数が違う仕組みを詳しく知りたい方向けの資料です。同じ短文を、JavaScriptの3つの方法で数えました。UTF-16の単位はプログラム内部の文字の長さ、コードポイントは文字に割り当てられた番号の数、書記素クラスタは見た目に近いまとまりです。操作のために、これらの名前を覚える必要はありません。
内部の数え方・改行の表記・実測表を見る
| 入力例 | UTF-16の単位 | コードポイント | 見た目に近いまとまり |
|---|---|---|---|
| 半角英字:「ABC」 | 3 | 3 | 3 |
| 空白とLF改行:「A B\nC」 | 5 | 5 | 5 |
| 1つの絵文字:「😀」 | 2 | 1 | 1 |
| 1文字の「が」:「が」 | 1 | 1 | 1 |
| 「か」+結合濁点:「が」 | 2 | 2 | 1 |
| 家族の絵文字:「👨👩👧👦」 | 11 | 7 | 1 |
| CRLF改行:「A\r\nB」 | 4 | 4 | 3 |
「\n」はLF、「\r\n」はCRLFという改行を見える形で表したものです。表では、この記号の文字数ではなく実際の改行を含む文字列を数えています。例えば「A\r\nB」は内部の単位で4、見た目に近いまとまりで3です。
「が」は1つの番号で表せますが、「か」と結合する濁点の2つを使っても似た見た目になります。後者はコードポイントで2、見た目に近いまとまりでは1でした。家族の絵文字「👨👩👧👦」は、UTF-16の単位で11、コードポイントで7、まとまりで1でした。
| 条件 | 処理後の表示 | 文字数 |
|---|---|---|
| すべて含む | A B\nC | 5 |
| 半角空白U+0020だけを除外 | AB\nC | 4 |
| LF改行U+000Aだけを除外 | A BC | 4 |
| 半角空白とLF改行を除外 | ABC | 3 |
比較では文字の表現を揃える「正規化」はしていません。CRLFの改行が1つの書記素にまとまることも、表の差に含まれます。こうした内部処理が、サービスごとの数字の違いにつながる場合があります。
比較に使った短文と結果を保存する(JSON形式)。同じ文字列で確かめたい方向けです。
ダウンロードしたJSON形式の資料の読み方
JSONは、項目名と値を組にして保存するテキスト形式です。textが入力した短文、escapedが改行を記号に置き換えた表示です。utf16、codePoints、graphemesは表の3つの数え方に対応します。外部サービスの仕様や画面を再現したものではありません。
補足:この比較から判断できないこと
本記事は、空白・改行などの条件を切り分け、提出先のルールを確認するためのガイドです。SNS、Office、応募フォーム等の個別の数え方を実測したものではありません。URLを一定の長さとして数える、改行を整えるなどの独自ルールがあれば、ここにある表とは結果が異なります。
見た目に近いまとまりで数えても、画面で使う幅や折り返しは決まりません。フォントや絵文字の表示が違う場合もあります。上限の数え方が不明なときは、表のどれかを正解と決めず、提出先へ確認してください。
出典と検証条件
編集:QuickTools 運営チーム · 検証・更新方針
検証日:
自作の短文をJavaScriptの文字列長・コードポイント数・Intl.Segmenterの書記素単位で比較。空白・改行の除外条件も別に集計。外部サービスのカウント仕様を検証したものではありません。
- 文字列のlength(MDN)
UTF-16のコード単位による長さと、他の数え方の説明。
- Intl.Segmenter(MDN)
書記素などの単位で文字列を区切るAPI。表では日本語・graphemeを使用。
説明や仕様が変わっていたら、掲載内容の訂正を連絡する。