Unicode インスペクター

テキストを貼り付けると、すべての文字を一度に表示します。不可視の文字も含みます。

使い方

  1. テキストを貼り付けるか入力すると、5 つのカウント、文字グリッド、最初の文字の詳細がすぐに表示されます。ボタンを押す必要はありません。
  2. まず 5 つの数値を読みます。コードポイント、書記素クラスター、UTF-8 バイト、UTF-16 単位は、同じテキストを数える 4 つの方法です。「Café」を 5 文字+結合アクセントで入力すると 6 コードポイントですが 5 クラスターになります。見た目が同じ 2 つの文字列が比較で一致しないよくある理由です。
  3. グリッドの任意のチップをクリックすると、その詳細(コードポイント、UTF-8 / UTF-16 / UTF-32 バイト、公式 Unicode 名、一般カテゴリ、文字体系、ブロック)が開きます。複数のコードポイントからなるクラスター(家族の絵文字、アクセント付き文字)は、コードポイントごとに 1 行になります。
  4. 不可視文字はグリッドで強調表示されます。「不可視のみ」に切り替えると、それらのクラスターだけを表示します。ゼロ幅スペース、結合子、方向マーク、改行なしスペース、制御文字、孤立サロゲートが対象です。
  5. 「コードポイントをコピー」はテキスト全体を「U+0043 U+0061 …」として返し、コードやバグ報告に貼り付けられます。「このクラスターをコピー」は選択中のものに対して同じことをします。

例

入力

Café — “smart quotes” vs​plain 👍🏽

コードポイント

U+0043 U+0061 U+0066 U+0065 U+0301 U+0020 U+2014 U+0020 U+201C U+0073 U+006D U+0061 U+0072 U+0074 U+0020 U+0071 U+0075 U+006F U+0074 U+0065 U+0073 U+201D U+00A0 U+0076 U+0073 U+200B U+0070 U+006C U+0061 U+0069 U+006E U+0020 U+1F44D U+1F3FD

34 コードポイント、32 クラスター、不可視文字 2 つ:「vs」の前の改行なしスペース U+00A0 と、「plain」の前のゼロ幅スペース U+200B です。「Cafe」+U+0301 は 2 つのコードポイントからなる 1 クラスターで、👍🏽 も 2 つのコードポイント(U+1F44D + U+1F3FD)からなる 1 クラスターです。👍🏽 のチップを選ぶと両方の行が表示されます。

ルール・制限・既知の問題

  • 名前は 499 件の公式エントリを厳選した表から取得します。ASCII、Latin-1、一般句読点、全角形、一般的な CJK 句読点、異体字セレクター、不可視の書式文字です。表にない文字は名前が「—」になり、カテゴリ、文字体系、ブロックはすべての文字について計算します。
  • 名前とブロック名は意図的に公式 Unicode の英語のままです。仕様やコードで使われる識別子であり、翻訳すると標準と照合できなくなるためです。
  • ブロックと文字体系は Unicode 16.0.0 に従います。後から追加された文字はブロックが存在しない(「—」)場合があり、文字体系はコード(「Latn」など)にフォールバックすることがあります。
  • 孤立サロゲートの UTF-8 バイトは U+FFFD(EF BF BD)として数えます。ブラウザーのエンコーダーがそうするためで、テキスト自体は変更しません。
  • 書記素クラスターは Intl.Segmenter(Chrome 87 以降、Safari 14.1 以降)を使います。ない場合はコードポイント単位で数え、その旨を通知に表示します。
  • 改行は制御文字であるため不可視文字として数えます。行末の紛れ込んだバイトを探すときにはまさに望ましい挙動ですが、複数行を貼り付けた場合の改行も「不可視」に含まれることになります。
  • 読み取り専用で、テキストを変更することはありません。不可視文字を削除するにはテキストクリーナーを、\u エスケープやパーセントエンコードとして書き出すにはエスケープツールを使ってください。
  • 豆腐文字(□)は、システムフォントにその文字がないことだけを意味し、文字が未割り当てであることを意味しません。
  • 最大 100,000 コードポイントです。グリッドは最初の 1,000 クラスターを描画しますが、上のカウントはテキスト全体を対象としています。
  • アップロードはありません。すべてブラウザー内で動作し、テキストがページの外に出ることはなく、ネットワークを切っても動作します。

文字列の謎が解けた後によく使われるツールです。