Unicode エスケープ エンコード/デコード
文字と \uXXXX エスケープを相互変換。絵文字など補助平面もサロゲートペアで正しく扱い、文字ごとにコードポイント・UTF-8 バイト・UTF-16 単位を表示。
結果\u4F60\u597D\u002C\u0020\uD83D\uDE00\u0020\u0041
| 文字 | コードポイント | UTF-8 バイト | UTF-16 単位 |
|---|---|---|---|
| 你 | U+4F60 | 0xE4 0xBD 0xA0 | U+4F60 |
| 好 | U+597D | 0xE5 0xA5 0xBD | U+597D |
| , | U+002C | 0x2C | U+002C |
| U+0020 | 0x20 | U+0020 | |
| 😀 | U+1F600 | 0xF0 0x9F 0x98 0x80 | U+D83D |
| U+0020 | 0x20 | U+0020 | |
| A | U+0041 | 0x41 | U+0041 |
どんなツールか
すべての文字には番号付きの位置(コードポイント)があります:A は U+0041、中 は U+4E2D です。JavaScript では \uXXXX というエスケープで書きます。落とし穴は、絵文字や珍しい文字が最初の 65536 枠の外に住むため、1 つの絵文字が 1 つの \uXXXX ではなくサロゲートペアになること:笑顔は \uD83D\uDE00 になります。このツールは両方の平面を正しく処理し、文字ごとのコードポイント・UTF-8 バイト・UTF-16 単位を示します。
豆知識・雑学
なぜ笑顔がエスケープ 2 つ分なのでしょう?このシステムが設計された当時は 65536 枠が無限に思え、絵文字は数十年後に登場したからです。エンジニアはやむなくパッチを当め:D800〜DFFF の範囲を予約しました。上位サロゲートの後に下位サロゲートが続くと、大きな文字 1 つを意味します。このパッチがあまりにうまくいったので、今でも誰も外せません。
由来と歴史
Unicode コンソーシアムは 1991 年 10 月に最初の Unicode 規格を発行しました。バージョン 2.0(1996 年 7 月)で上限が 100 万超のコードポイントに引き上げられ、Peter Hartke らと Unicode 技術委員会の主導でサロゲートペアを持つ UTF-16 が導入されました——だから今日でも絵文字は常に 2 つのエスケープになります。
関連キーワード
unicode escapeuxxxx converterサロゲートペアemoji unicodeコードポイント
フィードバック
ツールの問題を見つけた場合やご提案がある場合は、メールでお知らせください。すべてのメッセージに目を通します。
