本文へスキップ

Unicode文字の解析

Unicode Inspector

テキストをコードポイントに分解し、名前・ブロック・用字系とUTF-8/UTF-16のバイト列を示します。

テキストの中のコードポイントを1つずつ並べ、名前・ブロック・用字系・UTF-8とUTF-16のバイト列・エスケープ形式を見せます。人が1文字と呼ぶ単位にまとめ直す2つ目の表示もあります。上限に余裕があるように見える文章をフォームがはじく理由を説明するのは、その2つ目です。

🔒 ブラウザの中だけで動きますunicodecodepointinspectdebug

原文

表示

コードポイントをすべて並べます。長い入力は 2,000 行で打ち切ります。

コードポイント9個

文字コードポイント名前ブロック用字UTF-8UTF-16エスケープ
한U+D55CHANGUL SYLLABLE HANHangul SyllablesHangulED 95 9CD55C\uD55C %ED%95%9C
글U+AE00HANGUL SYLLABLE GEULHangul SyllablesHangulEA B8 80AE00\uAE00 %EA%B8%80
·U+0020SPACEBasic LatinOther200020\u0020 %20
AU+0041LATIN CAPITAL LETTER ABasic LatinLatin410041\u0041 %41
1U+0031DIGIT ONEBasic LatinDigit310031\u0031 %31
·U+0020SPACEBasic LatinOther200020\u0020 %20
😀U+1F600Emoticons U+1F600(ブロック名)EmoticonsCommonF0 9F 98 80D83D DE00\u{1F600} %F0%9F%98%80
·U+0020SPACEBasic LatinOther200020\u0020 %20
㈜U+321CEnclosed CJK Letters and Months U+321C(ブロック名)Enclosed CJK Letters and MonthsHangulE3 88 9C321C\u321C %E3%88%9C
ハングル音節と CJK 漢字の名前は規格の規則から計算するので正確です。한 が HANGUL SYLLABLE HAN なのは、字母が H・A・N だからです。ASCII と制御文字、よく使う約物は小さな表から引きます。それ以外は名前ではなくブロックで示します。Unicode の名前データベース全体はおよそ 2 MB あり、段落ひとつに名前を付けるためにそれを落としてくるのは割に合いません。

使い方

  1. テキストを貼り付けます

    正体の分からない1文字でも、点検したい行全体でもかまいません。長い入力は2,000行で切ります。

  2. コードポイントの表を読みます

    名前で文字を特定し、ブロックでUnicodeのどの区画に住んでいるかを知り、バイトの列で保存にかかる大きさが分かります。

  3. 個数を知りたければ書記素の表示に切り替えます

    人が1文字と呼ぶものごとに1行、その中のコードポイントを添えて並べます。家族の絵文字は1つに7つ、Macで入力した「が」は1つに2つです。

よくある質問

1文字がコードポイント2つになるのはなぜですか

濁点が分かれているからです。「が」が「か」と結合用濁点(U+3099)に分かれた形で、macOSはファイル名をこの形で書きます。合成済みの形とまったく同じに描かれ、比較すると別の値になります。正規化ツールが元どおりにつなぎます。

名前の代わりにブロック名が出る文字があります

Unicodeの名前データベースは全体で2 MBほどあり、段落1つに名前を付けるためにそれを取ってくるのは割に合いません。ハングル音節と漢字は標準自身の規則から正確に計算し、ASCII・制御文字・よく使う約物は小さな表から引き、残りはブロックで示します。

エスケープの列は何に使いますか

JavaScriptの形はソースコードに、URLの形はクエリ文字列に入れます。文字をそのまま受け取らない場所に、その文字を正確に入れられるよう両方を出しています。

ここから渡せます

次の一手

このツールが出したものをそのまま受け取れる道具です。