各文字のコードポイント・UTF-8/UTF-16・エスケープを一覧表示
str.length)です。絵文字や一部の漢字はサロゲートペアのため、両者の値が異なります。すべての解析はブラウザ内で完結し、入力内容は外部に送信されません。| 文字 | コードポイント | 10進 | UTF-8 (hex) | UTF-16 | HTMLエンティティ | CSS | JS | カテゴリ |
|---|---|---|---|---|---|---|---|---|
| 上の欄に文字を入力すると解析結果が表示されます | ||||||||
テキストを入力するだけで、その中の各文字のUnicode情報を一覧表示する無料ツールです。文字ごとに、コードポイント(U+XXXX表記)、10進数値、UTF-8のバイト列(16進)、UTF-16の符号単位、HTMLエンティティ、CSSエスケープ、JavaScriptエスケープ、そして文字カテゴリの目安をまとめて確認できます。インストールや会員登録は不要で、解析はすべてお使いの端末のブラウザ内で完結します。
使い方はかんたんです。入力欄に調べたい文字やテキストを貼り付けると、下の表に1文字ずつ分解された結果がリアルタイムで表示されます。絵文字や補助漢字のようにUTF-16でサロゲートペアになる文字も、コードポイント単位で正しく1文字として扱います。画面上部には「文字数(コードポイント)」と「文字列長(UTF-16)」を並べて表示するので、両者の差からサロゲートペアの有無を一目で把握できます。
「見た目は同じなのに検索に引っかからない全角・半角の違いを調べたい」「絵文字が期待どおりのコードポイントか確認したい」「テキスト中に紛れ込んだ制御文字やゼロ幅文字を特定したい」「HTMLやCSS・JSに特殊文字を安全に埋め込むためのエスケープを取得したい」といった開発・編集の場面で役立ちます。逆引きモードを使えば、U+XXXXのコードポイントから実際の文字を復元することもできます。
Unicodeでは、1つ1つの文字に「コードポイント」と呼ばれる番号が割り当てられています。U+0041(英大文字A)やU+3042(ひらがな「あ」)のように、U+の後ろに16進数で表記します。このコードポイントを実際のバイト列として保存・通信するための方式が符号化方式で、代表的なものがUTF-8とUTF-16です。
| 項目 | 意味 | 例(😀 U+1F600) |
|---|---|---|
| コードポイント | 文字に割り当てられた番号 | U+1F600 |
| UTF-8 | 1〜4バイトの可変長バイト列 | F0 9F 98 80(4バイト) |
| UTF-16 | 1〜2個の16ビット符号単位 | D83D DE00(サロゲートペア) |
| 10進 | コードポイントを10進数で表した値 | 128512 |
基本多言語面(BMP、U+0000〜U+FFFF)の外にある文字、たとえば多くの絵文字や一部の漢字は、UTF-16では2つの16ビット符号単位の組(サロゲートペア)で表現されます。JavaScriptの文字列は内部的にUTF-16で扱われるため、こうした文字はstr.lengthでは2としてカウントされます。一方、Array.from(str)や[...str]はコードポイント単位で区切るため1として数えます。本ツールが両方の値を表示するのは、この差を分かりやすくするためです。
各文字について、Webの各言語で使える特殊文字エスケープも表示します。HTMLエンティティは &#xXX; の数値文字参照形式、CSSは \XX のようにバックスラッシュと16進で表す形式、JavaScriptは \uXXXX と、コードポイントを直接書けるES2015の \u{...} 形式の両方を表示します。特殊文字や絵文字をソースに直接書くと文字化けやエンコード事故の原因になることがあるため、これらのエスケープをコピーして使うと安全です。