Unicodeエスケープ

テキストを貼ると \uXXXX エスケープを出力、エスケープを貼ると Unicode 文字に復元。

Unicodeエスケープについて

JSON ログや JavaScript リテラルでは、日本語や emoji が \uXXXX として表示されることがあります。hidevtool はプレーンテキストと JSON 形式の \u エスケープを相互変換し、補助平面はサロゲートペアにも対応します。

エンコードは ASCII リテラルを残し、それ以外のコードポイントをエスケープします。デコードは文字列内の \u 列を置換するため、API payload の diff やテストデータ作成に向いています。

JSON.stringify そのものではありません。引用符は自分で付けてください。FAQ では \u、UTF-8 hex、HTML エンティティの使い分けを説明します。

できること

\uXXXX エンコード

BMP 文字は 4 桁 hex。補助平面は高・低サロゲートペアの 2 つの \u 列になります。

その場デコード

長い文字列に埋め込まれたエスケープ列も、貼り付け全体を対象にデコードできます。

ASCII はそのまま

U+007F 未満の英数字などはエンコード時もリテラルのまま残し、混在出力を読みやすくします。

emoji

emoji は \u が 2 つになることがあります。有効なペアなら 1 つのグラフェムに復元されます。

\x ではない

JavaScript の \xNN(2 桁 hex)ではなく、\u とサロゲートパターンが中心です。

JSON 準拠

JSON 文字列リテラルを組み立てるときは、出力の外側にダブルクォートを付けてください。

よくある使い方

日本語を \u エスケープにするには?

テキストを貼り「エンコード」。非 ASCII は \uXXXX(emoji はペアのことがあります)。

\uXXXX をデコードするには?

エスケープ済み文字列を貼り「デコード」。不正な列は黙ってスキップせずエラーになります。

JSON の引用符は付きますか?

いいえ。エスケープされた断片のみ出力します。

よくある質問

日本語を \u エスケープにするには?
テキストを貼り「エンコード」。非 ASCII は \uXXXX(emoji はペアのことがあります)。
\uXXXX をデコードするには?
エスケープ済み文字列を貼り「デコード」。不正な列は黙ってスキップせずエラーになります。
JSON の引用符は付きますか?
いいえ。エスケープされた断片のみ出力します。
サロゲートペアの順序は?
高サロゲート→低サロゲート。JSON.stringify の astral 文字と同じです。
hex ツールとの違いは?
hex は UTF-8 バイト、\u は UTF-16 コードユニットです。ログの形式に合わせて選んでください。
HTML 内の \u は?
HTML は &#x; エンティティを使います。マークアップ文脈では HTML エンティティツールを使ってください。