使い方
- 「エンコード」か「デコード」を選び、HTML か「Unicode エスケープ」を選びます。
- テキストを貼り付けます。入力に合わせて結果がすぐに更新されます。
- HTML のエンコードでは、5 つの特殊文字だけをエスケープするか、非 ASCII 文字もすべてエスケープするかを選びます。
- 結果をコピーします。
オプションの説明
- 特殊文字をエスケープ
- & < > " ' を文字実体参照に変換します。UTF-8 の Web ページならこれだけで十分で、ほかの文字は読めるまま残ります。
- 非 ASCII 文字もエスケープ
- ASCII 以外の文字をすべて数値文字参照に変換します。UTF-8 を保存できないシステム向けです。
- 名前付き実体参照を使う
- © や のように名前がある文字は名前で、それ以外は数値文字参照で出力します。
- Unicode エスケープ
- \uXXXX は JavaScript と JSON 用(絵文字はサロゲートペアとして 2 つのエスケープになります)、\u{…} はモダンな JavaScript 用、U+XXXX はコードポイントの表記用、&#…; は 10 進数の HTML 文字参照です。
よく使う文字参照
| 文字 | 名前付き | 数値 |
|---|---|---|
| & | & |
& |
| < | < |
< |
| > | > |
> |
| “ | " |
" |
| ’ | ' |
' |
| ノーブレークスペース | |
  |
| © | © |
© |
| — | — |
— |
よくある質問
HTML エスケープで XSS を防げますか?
HTML 要素の内容にテキストを挿入する前にエスケープするのは、欠かせない対策の 1 つです。ただし属性、URL、JavaScript、CSS の中ではそれぞれ別のエスケープ規則が必要なので、手作業ではなくフレームワークに組み込まれたエスケープ機能を使ってください。
と通常のスペースの違いは何ですか?
ノーブレークスペース(U+00A0)は見た目はスペースですが、ブラウザはその位置で改行しません。また、連続して並べても 1 つにまとめられません。
セミコロンのない © でもデコードされるのはなぜですか?
歴史的な理由から、HTML 標準ではよく使われる一部の文字参照を、末尾のセミコロンがなくてもデコードします。このデコーダーはブラウザと同じ規則に従っています。
JSON で絵文字をエスケープして表すには?
「Unicode エスケープ」で \uXXXX を選びます。基本多言語面(BMP)の外にある絵文字は 2 つのエスケープになり、たとえば 😀 は \uD83D\uDE00 になります。
プライバシー
このツールはすべてブラウザ内で動作します。ファイルやテキストはお使いの端末上で処理され、当サイトのサーバーにアップロードされることはありません。