Unicodeインスペクタ
入力文字をUnicodeコードポイント単位で解析するインスペクタ。文字化け、異体字、絵文字、不可視文字の正体をコード表現から確認できる。
使い方
- 調べたい文字列を入力する。
- 各文字のコードポイント、UTF-8、UTF-16、UTF-32を確認する。
- 文字化け、異体字、不可視文字の調査に使う。
Unicodeインスペクタ
AU+0041U+0041UTF-8 41UTF-16 0041UTF-32 00000041Basic Latin
あU+3042U+3042UTF-8 E3 81 82UTF-16 3042UTF-32 00003042Hiragana
😀U+1F600U+1F600UTF-8 F0 9F 98 80UTF-16 D83D DE00UTF-32 0001F600Emoticons
こんな用途に
- 文字化け、異体字、絵文字の正体を調べたいとき。
- 同じ見た目の文字が同一コードポイントか確認したいとき。
- UTF-8、UTF-16、UTF-32の表現を見たいとき。
仕組み
- 入力をUnicodeコードポイント単位で分解。
- 各文字をUTF表現へ変換し、代表的なUnicodeブロック名と併せて表示。
確認ポイント
- 見た目が同じでもコードポイントが違う文字は検索や比較で一致しないことがある。
- 不可視文字の混入調査は不可視文字ビューアと併用すると見つけやすい。
手元でやるには
コードポイントと文字名を表示
必要環境: Python 3python3 -c 'import sys,unicodedata; [print(f"{c}\tU+{ord(c):04X}\t{unicodedata.name(c, "UNKNOWN")}") for c in sys.stdin.read()]'関連ツール
よくある質問
コードポイントとは?
Unicodeが各文字へ割り当てた番号。U+3042のような形式で表す。
UTF-8とUTF-16は何が違う?
同じUnicode文字を保存・通信するための符号化方式が違う。必要なバイト数も変わる。