テキストの文字ごとのコードポイントとUTF-8バイトを確認する方法
テキストを入力して実行すると、文字ごとのコードポイント、UTF-8バイト表現、文字数、バイト総数、分類ラベルを確認できます。入力を省略した場合も処理されますが、文字数とUTF-8バイト総数は0です。
この確認で分かること
入力したテキストを1文字ずつ調べ、各文字のコードポイント、UTF-8バイト表現、位置、分類ラベルを確認するためのツールです。文字列の長さを数えたいときや、文字ごとの数値表現とエンコード結果を見比べたいときに役立ちます。ASCII文字、日本語などのCJK文字、空の入力も確認できます。
表示される分類ラベルは、コードポイントの広い数値範囲をもとに選ばれます。そのため、Unicodeの正式なブロック名、スクリプト名、言語名、文字属性を調べる用途ではなく、結果を大まかな目安として読むのが適切です。
確認の手順
- 確認したい文字列を入力欄に入力します。入力を省略することもでき、その場合は空の文字列として扱われます。
- 実行して結果を表示します。入力を空にしたままでも処理は成功し、文字数とUTF-8バイト総数はどちらも0になります。
- 文字ごとの一覧で、位置、文字そのもの、数値コードポイント、大文字の16進数によるコードポイント表記、UTF-8バイトの16進数表現、分類ラベルを確認します。
- 一覧の各行を入力文字列と照らし合わせ、最後に合計欄を確認します。報告される文字数は処理された文字の数で、UTF-8バイト総数は各文字をUTF-8で表したバイト長を合計した値です。
- 必要に応じて入力を別の文字列に置き換えて再度実行し、文字の種類による表示の違いを比べます。
結果を読み取るポイント
一覧の位置は、処理された文字の順序を追うために使います。数値コードポイントと大文字の16進数表記は同じコードポイントを異なる形式で示し、UTF-8バイト表現はその文字をバイト列として見た結果です。したがって、文字の表示、数値、16進数、バイト表現を同じ行で確認すると、読み違いを減らせます。
文字数とUTF-8バイト総数は別の集計値です。文字によってUTF-8で必要なバイト長が異なるため、入力に複数の種類の文字が含まれると、両者は異なる数になります。分類ラベルは広い範囲による大まかな表示であり、文字の言語やスクリプトを確定する結果としては使わないでください。
また、ここで扱われる単位は処理された文字です。画面上で一つに見える文字のまとまりや、正規化後の文字列を分析する機能として結果を解釈しないことが大切です。
使用例
ASCII文字を1文字だけ調べたい人が、「A」を入力して文字単位の表示項目と集計欄の構成を確認します。
入力欄にASCII文字の「A」を入力して実行し、表示された1文字分の行と合計欄の項目を確認します。
1文字分の行に、位置、文字、数値コードポイント、大文字の16進数表記、UTF-8バイトの16進数表現、分類ラベルが示され、合計欄に文字数とUTF-8バイト総数が示されます。
制限事項
- 分類ラベルはコードポイントの広い範囲にもとづく目安であり、Unicodeの正式なブロック、スクリプト、言語、文字属性の分類を示すものではありません。
よくある間違い
- 文字数が0になったときは、入力を省略したか、入力欄が空の可能性があります。調べたい文字列が入っていることを確認してから、もう一度実行してください。
よくある質問
入力を省略しても確認できますか?
入力を省略した場合は空の文字列として処理され、処理自体は成功します。そのときに表示される文字数とUTF-8バイト総数は、いずれも0です。
各文字について何が表示されますか?
入力が空でない場合は、位置、文字、数値コードポイント、大文字の16進数表記、UTF-8バイトの16進数表現、分類ラベルが文字ごとに示されます。
分類ラベルはUnicodeの正式な文字分類ですか?
分類ラベルはコードポイントの広い数値範囲をもとにした表示です。Unicodeの正式なブロック、スクリプト、言語、文字属性を判定する結果としては扱えません。