文字数カウントツール
文字数・単語数・行数をリアルタイムでカウント。全角を2・半角を1とする数え方、UTF-8のバイト数、UTF-16のコード単位も表示し、上限までの残りと、上限を超えた位置が分かります。SNS投稿や原稿、入力フォームの文字数チェックに。
- 文字数
- 0
- 空白除く
- 0
- 単語数
- 0
- 行数
- 0
- 全角2・半角1
- 0
- UTF-8バイト数
- 0
- UTF-16コード単位
- 0
- コードポイント
- 0
使い方
- テキストエリアに文章を入力または貼り付けます
- 文字数・空白を除いた文字数・単語数・行数が、入力のたびに更新されます。その下の行には、全角を2・半角を1とした値、UTF-8のバイト数、UTF-16のコード単位の数、コードポイントの数が並びます
- 文字数に制限がある場合は「上限文字数(任意)」に数字を入力します。数値の下に「残り◯文字」または「◯文字超過」が表示されます。上限を超えているときは、超え始めた位置とその前後の文章も表示され、上限内の部分だけをコピーできます
- 文章を直すと数値も残りの文字数もすぐに変わるため、制限に合わせて削りながら確認できます
実行ボタンはなく、入力できる文章の長さにも制限はありません。入力欄を空にすると、数値はすべて0に戻ります。
上限文字数と残りの文字数
「上限文字数(任意)」は空のままでも使えます。数字を入力したときだけ、残りの文字数が表示されます。
- 上限以内のとき: 「残り◯文字」と表示します。ちょうど上限のときは「残り0文字」です
- 上限を超えたとき: 「◯文字超過」と赤い文字で表示し、下の棒も赤に変わります
- その横に「文字数 128 / 上限 140」のように、比べている値と上限を並べて表示します
「上限と比べる値」で、上限と比べる数値を4つの中から選びます。最初は「文字数」(空白・改行を含む)です。
- 文字数: 空白と改行を含めた文字数を上限と比べます
- 空白除く: 空白と改行を除いた文字数を上限と比べます
- 全角2・半角1: 全角を2、半角を1とした値を上限と比べます。残りは「残り半角◯文字分」と表示します。「全角100文字(半角200文字)以内」という指定なら、上限に200を入力します
- UTF-8バイト数: UTF-8のバイト数を上限と比べます。残りは「残り◯バイト」と表示します
上限に入力できるのは1以上の整数です。全角の数字(140)も読み取ります。0、小数、マイナスの数、数字以外の文字を入力すると、欄の下に案内が出て、残りの文字数は表示されません。
たとえば上限を140、比べる値を「文字数」にして、下の具体例の1つ目の文章(20文字)を入力すると「残り120文字」と表示されます。「空白除く」に切り替えると17文字と比べるため「残り123文字」になります。
上限を超えた位置と、上限内の部分のコピー
文章が上限を超えると、残りの文字数の下に「2行目の4文字目から上限を超えています」のように、超え始めた位置を表示します。その下には、超え始めた位置の前の最大20文字と、そこからの最大40文字を並べ、上限を超えた部分を赤い背景と下線で示します。前後にまだ文章が続くときは「…」を付けます。
- 位置は「上限と比べる値」で選んだ数え方で決まります。「空白除く」では空白と改行を上限までの数に入れないので、空白や改行が上限を超え始めた位置になることはありません
- 「◯文字目」は、その行の先頭から見た目の1文字を1と数えた位置です。この位置は、どの数え方を選んでいても空白を1文字に数えます
- 「全角2・半角1」と「UTF-8バイト数」では、上限をまたぐ文字は丸ごと超えた側に入ります。たとえば残り1バイトのところにひらがな(3バイト)があれば、そのひらがなから超過として示します。つないだ絵文字も途中で分けません
- 超えた部分に改行があるときは、改行の位置に「↵」を表示します
「上限内の部分をコピー」を押すと、超え始めた位置より前の文章をクリップボードにコピーします。入力欄の文章は変わりません。1文字目から上限を超えている場合(上限を1、比べる値を「全角2・半角1」にして「あ」を入力したときなど)は、ボタンを表示しません。
コピーする部分は、超え始めた位置の直前までをそのまま切り出したものです。「空白除く」と比べているときは、末尾に空白や改行が残ることがあります。
たとえば上限を12、比べる値を「文字数」にして次の文章を入力すると、「5文字超過」と「2行目の4文字目から上限を超えています」が表示され、「まだ無い。」が超えた部分として示されます。
吾輩は猫である。
名前はまだ無い。
改行も1文字に数えるので、上限内の12文字は1行目の8文字と改行、「名前は」の3文字です。「上限内の部分をコピー」でコピーされるのも、この12文字です。
4つの数値の数え方
- 文字数: 入力した文章全体の文字の数です。半角・全角の空白、タブ、改行もそれぞれ1文字に数えます
- 空白除く: 半角空白、全角空白、タブ、改行を取り除いたあとの文字の数です
- 単語数: 空白や改行で区切られたまとまりの数です
- 行数: 改行で区切った行の数です。空行も1行に数えます
この4つでは、全角文字も半角文字もどちらも1文字です。
絵文字や結合文字は、見た目の1文字を1と数えます(書記素単位)。たとえば家族の絵文字「👨👩👧👦」は内部では7つの符号をつないで表されていますが、このアプリでは1文字です。国旗の絵文字「🇯🇵」も1文字として数えます。
ほかの数え方(全角2・半角1、バイト数など)
4つの数値の下の行には、入力欄やシステムが上限の判定に使うことのある、別の単位で数えた値が並びます。どれも空白と改行を含めて数え、改行は1つを1と数えます。
- 全角2・半角1: 半角の文字を1、それ以外の文字を2として足した値です。半角として扱うのは、半角の英数字と記号、半角スペース、タブ、改行、半角カタカナ(
カや゙)、半角の円記号¥とオーバーライン‾です。ひらがな・漢字・全角の英数字や記号・全角スペースは2です - UTF-8バイト数: 文章をUTF-8で保存したときのバイト数です。半角の英数字は1、ひらがな・漢字の多くは3、多くの絵文字は4です
- UTF-16コード単位: JavaScriptの
"文字列".lengthや、HTMLの入力欄のmaxlengthが数える単位です。多くの絵文字と一部の漢字(𠮷など)は、1文字で2になります - コードポイント: Unicodeが文字や部品に割り当てた番号の数です。つないだ絵文字は、部品の数だけ増えます
同じ文字を数えた結果です。値は順に、文字数 / 全角2・半角1 / UTF-8バイト数 / UTF-16コード単位 / コードポイントです。
a: 1 / 1 / 1 / 1 / 1あ: 1 / 2 / 3 / 1 / 1ガ(半角カタカナと半角の濁点): 1 / 2 / 6 / 2 / 2𠮷: 1 / 2 / 4 / 2 / 1😀: 1 / 2 / 4 / 2 / 1🇯🇵: 1 / 4 / 8 / 4 / 2👨👩👧👦: 1 / 14 / 25 / 11 / 7
「全角2・半角1」は符号(コードポイント)ごとに数えるため、つないだ絵文字は部品の数だけ増えます。絵文字のあとに付く見えない符号も2と数えます。半角の英数字と記号、半角カタカナ、ひらがな、全角カタカナ、JIS第1・第2水準の漢字と全角の記号だけの文章なら、この値はShift_JISで保存したときのバイト数(改行を1バイトとした場合)と同じになります。それ以外の文字を含む場合や、変換のしかたによっては一致しないことがあります。
具体例
入力:
こんにちは 世界
Hello World
結果:
- 文字数: 20
- 空白除く: 17
- 単語数: 4
- 行数: 2
- 全角2・半角1: 27
- UTF-8バイト数: 34
- UTF-16コード単位: 20
- コードポイント: 20
文字数の20には、1行目の半角空白、行の区切りの改行、2行目の半角空白が1文字ずつ含まれています。この3文字を除いた17が「空白除く」の値です。「全角2・半角1」の27は、全角の7文字が14、半角の英字10文字と空白・改行の3文字が13です。UTF-8バイト数の34は、全角の7文字が21バイト、残りの13文字が13バイトです。
空白を使わない日本語の文章では、単語数が文や行のまとまりの数になります。
吾輩は猫である。名前はまだ無い。
どこで生れたかとんと見当がつかぬ。
- 文字数: 34
- 空白除く: 33
- 単語数: 2
- 行数: 2
どちらの文字数を使うか
提出先や入力フォームによって、空白や改行を数えるかどうかは異なります。
-
「空白・改行を含めて◯文字以内」と指定されている場合は「文字数」を見ます
-
「空白・改行を除いて◯文字」と指定されている場合や、本文の分量だけを知りたい場合は「空白除く」を見ます
-
指定がない場合は、少ないほうの条件でも収まるように、両方の値を確認しておくと安全です
-
「全角◯文字(半角◯文字)以内」と指定されている場合は「全角2・半角1」を見ます。上限に入力するのは半角のほうの数字です
-
「◯バイト以内」と指定されていて、保存先の文字コードがUTF-8の場合は「UTF-8バイト数」を見ます
-
絵文字を入れると入力欄の途中で打てなくなる場合は、
maxlengthで制限されていることがあります。「UTF-16コード単位」を見ます
上限文字数を入力している場合は、「上限と比べる値」を同じ基準に合わせてください。空白を含める指定なら「文字数」、除く指定なら「空白除く」です。
提出先の数え方が、このアプリのどの値とも一致しないことがあります。次のような場合です。最終的な確認は、提出先の画面に表示される数値で行ってください。
- X(旧Twitter)は、日本語と絵文字を2、URLを長さに関係なく23と数え、つないだ絵文字も2と数えます。「全角2・半角1」とは、URLやつないだ絵文字、半角カタカナを含む文章で値が変わります
- 改行をCRLF(2つの符号)として数えるシステムでは、改行の数だけ値が大きくなります
- 全角・半角の区別のしかたは、サービスによって細部が異なります。アクセント付きの英字(
éなど)は、このアプリでは2と数えます
数え方が違う理由と確かめ方は、文字数がツールやサービスによって違う理由と、合わせ方で説明しています。
注意点
- 最後の行のあとに改行があると、行数が1つ増えます。
abcのあとに改行を1つ入力した場合、文字数は4、空白除くは3、行数は2です - 空白だけを3つ入力した場合、文字数は3、空白除くは0、単語数は0、行数は1になります
- 単語数は英文のように空白で単語を区切る文章のための値です。日本語の単語(形態素)を数えるものではありません
- 入力した文章の計算は、このページを表示しているブラウザの中で行われます。文章が外部へ送られることはありません
FAQ
絵文字は何文字としてカウントされますか?
見た目どおり1文字としてカウントします。「👨👩👧👦」のように複数の絵文字をつないだものや、国旗の絵文字も1文字です。
全角スペースは空白として扱われますか?
はい。「空白除く」では半角空白、全角空白、タブ、改行をすべて除外します。「文字数」では全角空白も1文字に数えます。
改行は文字数に含まれますか?
「文字数」には改行1つを1文字として含みます。「空白除く」には含みません。
全角は2文字、半角は1文字として数えられますか?
「文字数」と「空白除く」では、全角も半角も1文字です。全角を2、半角を1とした値は、その下の行の「全角2・半角1」に表示されます。上限と比べることもできます。
バイト数は分かりますか?
UTF-8のバイト数を「UTF-8バイト数」に表示します。Shift_JISのバイト数は表示しません。半角の英数字と記号、半角カタカナ、ひらがな、全角カタカナ、JIS第1・第2水準の漢字と全角の記号だけの文章なら「全角2・半角1」と同じ値になるので、目安として使えます。どちらも改行は1つを1バイトとして数えます。
原稿用紙の枚数も知りたいのですが?
このアプリには表示がありません。400字詰めの枚数の目安は、文章整形ツールで確認できます。
上限を超えると入力できなくなりますか?
いいえ。上限を超えても入力は止まらず、入力欄の文章が切り捨てられることもありません。超えた量を「◯文字超過」と表示し、超え始めた位置を示します。上限に収めた文章が必要なときは、「上限内の部分をコピー」で超え始めた位置より前だけをコピーできます。
入力内容は保存されますか?
いいえ。保存する機能はなく、ページを再読み込みすると入力した文章も上限文字数も消えます。
- 種別
- ユーティリティ
- カテゴリ
- テキスト
- タグ
- text
- counter
- writing
- byte
- unicode
このアプリに関連するガイド
文字数がツールやサービスによって違う理由と、合わせ方
同じ文章でも文字数が合わないのは、数える単位と空白・改行の扱いが違うためです。絵文字、全角文字、改行で差が出る理由と、提出先の数え方に合わせる手順を解説します。
テキストcharacter-countunicodeemojiwriting
関連アプリ


全角・半角変換ツール
英字・数字・記号・スペース・カタカナを全角と半角のあいだで一括変換。種類ごとに向きを選べるので「英数字は半角、カナは全角」も一度でそろえられます。

大文字・小文字変換ツール
テキストを大文字・小文字・タイトルケースや、キャメルケース・パスカルケース・スネークケース・コンスタントケース・ケバブケースにリアルタイム変換。9つの結果を表に並べて一度に見比べられ、複数行は1行ずつ変換し、使う結果だけを行ごとにコピーできます。


