Unicodeエスケープ変換(日本語⇔\uXXXX)

日本語などの文字を \uXXXX 形式のエスケープ表記に変換したり、元の文字に戻したりします。JSONやプログラムの文字列確認に。

Unicodeエスケープ変換について

プログラムやJSONの中では、日本語などの文字を「\u3053」のような、Unicodeエスケープの形式で表すことがあります。このツールは、文字をこの形式に変換したり、逆に元の文字に戻したりします。

JSONの文字列や、JavaScript・Javaなどのソースコード、ログに出力された文字の確認に便利です。絵文字などの、基本多言語面の外にある文字は、2つのコード単位(サロゲートペア)に分かれて表示されます。

こんなときに使えます

  • ログやJSONの「\uXXXX」表記を、日本語に戻す
  • プログラムの文字列を、エスケープ形式にする
  • 文字の内部的なコードを、確認する

使うときのポイント

  • 英数字はそのまま残す設定にすると、読みやすい
  • JSONでは、日本語をそのまま書いても有効

計算例

入力欄の初期値のまま計算すると、次の結果になります。条件は、処理が文字 → \uXXXX、入力がこんにちは😀、ASCII文字(英数字)はそのまま残すがはいです。数値を変えると、この結果もそれに合わせて変わります。

結果: \u3053\u3093\u306b\u3061\u306f\ud83d\ude00

使い方

  1. 処理(変換か元に戻すか)を選びます。
  2. 文字列を入力すると、結果が表示されます。

計算方法・仕組み

各文字をUTF-16のコード単位(4桁の16進数)で表します。絵文字など基本多言語面の外の文字は、2つのコード単位(サロゲートペア)に分かれます。

知っておきたい基礎知識

Unicodeエスケープは、文字を\uXXXXという形式(Xは16進数の4桁)で表す書き方です。JSONや、JavaScript、Javaなどのプログラムの文字列で、日本語や、特殊な文字を安全に表すために、使われます。「あ」は「\u3042」、「A」は「\u0041」と書きます。

絵文字や、一部の漢字は、基本の範囲(U+FFFFまで)に収まらないため、2つの値の組(サロゲートペア)で、表されます。たとえば、「😀」は「\ud83d\ude00」です。ログや、APIのレスポンスに、「\u」で始まる文字列が、現れたときに、このツールで、元の文字に戻すと、内容を読めます。

間違えやすいポイント

  • サロゲートペアの片方だけでは、正しい文字にならない
  • 「\u」の後ろが、4桁の16進数でないと、正しく変換できない
  • プログラムの言語によって、エスケープの書式が異なる(\u{…}など)

よくある質問

「あ」のエスケープは、何ですか?
「\u3042」です。ひらがなの「ぁ」から、順に、3041、3042… と続きます。
日本語のJSONが、「\u」だらけで、読めないときは?
このツールで、元の文字に戻すと、読めるようになります。