Unicodeに収録されている文字について、各種エンコーディング(文字コード)でのデータ並び(バイトシーケンス)を調べることができます。 調べ方は、3通りの中から選べます。 データ並びは、すべて%xx形式(URLエンコード、パーセントエンコーディングともいう)で表示します。 併せて、JIS漢字コード、区点コード(面区点番号)、JIS漢字水準も調べられます。
文字列(最大200文字)を入力して、URLエンコード、もしくはユニバーサル文字名またはHTML数値文字参照へのエンコードを行います。 異体字セレクタ(IVS)等のUnicode制御文字も文字数としてカウントされます。
Unicode文字番号(Unicode Code Point、例:U+6B27)を入力して調べます。
調べたい文字を1文字入力して調べます。
その他の変換について記します。
区点コードからUnicode文字番号に変換するツールは準備しておりません。 これは、ネット上で区点コード表(=JIS漢字コード表)を容易に入手できるためです。 区点コード表を見て、調べたい文字を上記の「1文字入力して調べる」に コピー&ペーストすれば、Unicode文字番号を調べられます。
テキストエディタで変換できるのではと思います。 というか、この項は以下の用語を入れるために記しているだけなので……。 IBM拡張文字、NEC特殊文字、NEC選定IBM拡張文字、98文字、Appleシステム外字。
調べ方は、以下の3種類の中から選べます。 「文字列を入力して調べる」、「文字番号を入力して調べる」、「1文字入力して調べる」の3種類です。 いずれの調べ方とも、 UTF-8、UTF-16LE、UTF-16BE、UTF-32LE、UTF-32BE、 Shift_JIS、EUC-JP、ISO-2022-JPエンコーディング(文字コード)での URLエンコードが可能です。
「文字列を入力して調べる」では、 URLエンコードの他に、 ユニバーサル文字名(ユニバーサルキャラクタ名、Universal Character Names(UCN))、または HTML数値文字参照(Numeric Character References(NCR))へのエンコードも可能です。
なお、ユニバーサル文字名は、ユニコード・エスケープシーケンス(Unicode Escape Sequence)、 またはUnicode文字エスケープシーケンスと呼ぶこともあります。 プログラミング言語において、文字列リテラル内で Unicode文字をUnicodeコードポイントを直接指定して表記することを目的としています。 プログラミング言語によって、 ユニバーサル文字名の表記には違いがあります。違いは以下の通りです。 なお、いずれの表記であっても、全Unicode文字(U+0000からU+10FFFF)の表現が可能です。
ユニバーサル文字名 Perl式正規表現と具体例 | 言語 | 備考 |
---|---|---|
\\u[0-9a-fA-F]{4} (例:\u6B27) | C# Java(Java 1.5以降) JavaScript Objective-C Python Ruby | U+10000からU+10FFFFは UTF-16のサロゲートペア使用 |
\\U[0-9a-fA-F]{8} (例:\U00006B27) | C++(C++11以降) C# Objective-C Python | |
\\u\{[0-9a-fA-F]{1,6}\} (例:\u{106B27}) | JavaScript(ECMAScript6以降) PHP(PHP 7.0以降) Ruby Swift | Swiftは8桁まで表記可能 ({1,6}ではなく{1,8}) |
\\x\{[0-9a-fA-F]{1,6}\} (例:\x{106B27}) | Perl |
Unicode文字番号(Unicode Code Point)、ユニバーサル文字名(UCN)、HTML数値文字参照(NCR)の 3つは、用途が違うだけで使う数値(番号)は同じです。 例えば、Unicode文字番号 U+6B27の文字は、 ユニバーサル文字名(Perl式表記)で表記すると \x{6B27} となり、 HTML数値文字参照で表記すると 欧 となります。
「文字番号を入力して調べる」では、 サロゲートエリアのエンコーディングはすべてゼロと表示します。 そもそも文字番号として使えないエリアであるためです。 「文字番号を入力して調べる」では、入力したUnicode文字番号の文字の表示も行うので、 ブラウザで実際に表示できるかどうかの確認ができます。 ただしUnicodeの規格でグリフ(字形)の割り当てられているUnicode文字番号であっても、 実際に表示されるかどうかはフォント次第です。 また、本家UnicodeサイトのUnihan Database LookupだとCJK領域の文字のみ情報が表示されるのに対して、 本ページではそのような制約はありません。
「1文字入力して調べる」では、 異体字(IVS付の文字)については、IVSなしの親字(基底文字)について調べます。
「文字番号を入力して調べる」、「1文字入力して調べる」では、 JIS漢字コード、面区点番号(区点コード)、JIS漢字水準も調べられます。 これらは、JIS X 0213:2004(JIS2004、JIS拡張漢字)に対応しています。 JIS X 0212(JIS補助漢字)には対応していません。
JIS X 0213(JIS拡張漢字)の1面には、JIS第1水準漢字、JIS第2水準漢字、JIS第3水準漢字が収録され、 2面にはJIS第4水準漢字が収録されています。 なお、JIS X 0208(JIS基本漢字。JIS第1水準漢字とJIS第2水準漢字)はJIS X 0213(JIS拡張漢字)に包含され、 JIS X 0212(JIS補助漢字)およびJIS X 0213(JIS拡張漢字)に収録されている漢字はすべてUnicodeに収録されています。
「文字列を入力して調べる」、「文字番号を入力して調べる」、「1文字入力して調べる」のいずれとも UTF-8の4バイトでのエンコーディング、UTF-16のサロゲートペアにも対応しているので、 BMP(基本多言語面、Basic Multilingual Plane)にとどまらず、 SMP(補助多言語面、Supplementary Multilingual Plane)、 SIP(Supplementary Ideographic Plane)、SSP(Supplementary Special-purpose Plane)、 Private Use Plane等、 全Unicode文字(U+0000~U+0010FFFF)について調べることができます。 ただし、Shift_JIS、EUC-JP、ISO-2022-JPエンコーディングでのURLエンコード時、 これらのエンコーディングで表現できない文字は削除されます。
「文字列を入力して調べる」については、 UTF-8エンコーディングでのURLエンコードは3種類あり、以下のように一部の文字のエンコードのされ方が異なります。
rawurlencode() RFC3986準拠 (旧RFC1738) | urlencode() | すべて%xx形式 | |
---|---|---|---|
半角スペース 半角ブランク 半角空白 | %20 | + | %20 |
半角チルダ | ~ (そのまま) | %7E | %7E |
半角マイナス 半角ハイフン | - (そのまま) | - (そのまま) | %2D |
半角アンダーバー 半角アンダースコア 半角アンダライン | _ (そのまま) | _ (そのまま) | %5F |
半角ピリオド 半角ドット | . (そのまま) | . (そのまま) | %2E |
半角英数字 | (そのまま) | (そのまま) | (%xx形式) |