開発者ツール / 22

JSON文字列エスケープ&アンエスケープ

JSONの文字列リテラル向けに引用符・改行・制御文字をエスケープ、または生のJSON文字列データをアンエスケープします。

JSON文字列エスケープ&アンエスケープ: TOEAは二重引用符、バックスラッシュ、制御コード、改行を有効なJSON文字列のエスケープシーケンス(\", \\, \n)と相互に変換します。 サーバーへのファイルアップロードは一切なく、100%ブラウザ内でローカル実行します。

カテゴリ
開発者ツール
実行回数
ブラウザ内で
コスト
無料 · 登録不要
提供状況
すぐに使えます

JSONのエスケープで対応できるもの

JSON文字列内でエスケープが必要なのは、二重引用符、バックスラッシュ、U+0020未満の制御文字だけです。そのため、\"、\\、\n、\t、\u0000形式のコードが使われます。JSONはUTF-8なので、アクセント付き文字や絵文字はそのままにできます。JSONには\'エスケープも単一引用符の文字列もありません。そのため、JavaScriptソースからコピーしたテキストは解析に失敗することがあります。

二重エスケープとHTMLページ

ログで\\nや\\\"を見かける場合、通常は値が2回エスケープされています。JSONドキュメントが別のJSONドキュメント内の文字列として保存された場合などに起こります。まず1回アンエスケープして結果を確認し、不要なバックスラッシュが残っていればもう一度アンエスケープしてください。

JSON用のエスケープをしても、HTMLの<script>ブロック内で安全になるとは限りません。</script>を含む文字列はスクリプトを途中で終了させます。そこで<を\u003cとしてエスケープするか、データを<script type="application/json">要素に入れてJSON.parseで読み取ってください。

使い方

  1. 生テキストまたはエスケープ済みのJSON文字列を貼り付けます。
  2. EscapeまたはUnescapeモードを選びます。
  3. 変換後の文字列をコピーします。

プライバシーと制限事項

すべてのエスケープ処理はお使いのブラウザのメモリ内でローカルに実行されます。

関連ツール

よくある質問

なぜJSONでは文字列をエスケープする必要があるのですか?

JSONの文字列値内に未エスケープの引用符や改行があると、JSONの構文エラーになります。

無料ツール · ブラウザ内で · アカウント不要