HTMLエスケープ・文字参照変換(エンティティ)
< > & " ' などをHTMLの文字参照(< や < など)にエスケープし、文字参照を元の文字に戻します。名前・10進数・16進数の3形式に対応しています。
処理
形式
名前のない文字(絵文字など)は10進数の参照にします。
変換する文字
結果はHTMLとして表示せず、文字のまま表示します。
よく使う文字参照の一覧
| 文字 | 名前 | 10進数 | 16進数 |
|---|---|---|---|
| HTMLの特殊文字 | |||
| & | & | & | & |
| < | < | < | < |
| > | > | > | > |
| " | " | " | " |
| ' | ' | ' | ' |
| 空白 | |||
| ノーブレークスペース | |   |   |
| enスペース |   |   |   |
| emスペース |   |   |   |
| 細いスペース |   |   |   |
| ゼロ幅スペース | ​ | ​ | ​ |
| 句読点・引用符 | |||
| – | – | – | – |
| — | — | — | — |
| ‘ | ‘ | ‘ | ‘ |
| ’ | ’ | ’ | ’ |
| “ | “ | “ | “ |
| ” | ” | ” | ” |
| … | … | … | … |
| « | « | « | « |
| » | » | » | » |
| · | · | · | · |
| • | • | • | • |
| 記号 | |||
| © | © | © | © |
| ® | ® | ® | ® |
| ™ | ™ | ™ | ™ |
| § | § | § | § |
| ¶ | ¶ | ¶ | ¶ |
| ° | ° | ° | ° |
| † | † | † | † |
| ✓ | ✓ | ✓ | ✓ |
| 通貨 | |||
| € | € | € | € |
| £ | £ | £ | £ |
| ¥ | ¥ | ¥ | ¥ |
| ¢ | ¢ | ¢ | ¢ |
| ¤ | ¤ | ¤ | ¤ |
| 矢印 | |||
| ← | ← | ← | ← |
| ↑ | ↑ | ↑ | ↑ |
| → | → | → | → |
| ↓ | ↓ | ↓ | ↓ |
| ↔ | ↔ | ↔ | ↔ |
| ⇒ | ⇒ | ⇒ | ⇒ |
| 数学 | |||
| × | × | × | × |
| ÷ | ÷ | ÷ | ÷ |
| ± | ± | ± | ± |
| ≠ | ≠ | ≠ | ≠ |
| ≤ | ≤ | ≤ | ≤ |
| ≥ | ≥ | ≥ | ≥ |
| ∞ | ∞ | ∞ | ∞ |
| ≈ | ≈ | ≈ | ≈ |
使い方
- 「エンコード」または「デコード」を選びます。
- エンコードでは形式(名前・10進数・16進数)と、変換する文字(HTMLの特殊文字だけ、またはASCII以外も含めたすべて)を選びます。
- 文字列を入力して「エンコードする」または「デコードする」を押します。デコードは名前・10進数・16進数が混在していても読み取ります。
- 結果を「コピー」します。「結果を入力に戻す」で逆方向の変換を続けられます。ページ下の一覧で、よく使う文字参照を確認できます。
注意事項
- 入力は2MBまでです。
- 名前の形式で、名前のない文字(絵文字など)は10進数の参照にします。
- 存在しない名前(&foo; など)、0・サロゲート・U+10FFFFを超える番号の参照は変換せず、そのまま残して件数を表示します。
- デコードはHTML本文での読み方に合わせています。属性値の中では、セミコロンのない参照の扱いがブラウザと異なる場合があります。
- 結果はHTMLとして表示せず、常に文字のまま表示します。HTMLタグの除去やサニタイズ(安全化)をする機能ではありません。
計算・変換の仕組み
名前付き文字参照の一覧は、WHATWG HTML Living Standard が公開している entities.json(2,231件)から生成しています。
デコードはブラウザのHTML解析に入力を渡さず、独自の解析で1つずつ読み取ります。& や © のように古くからある一部の名前はセミコロンなしでも読み取り、A のような数値参照もセミコロンを省略できます。
数値参照の128〜159は、ブラウザと同じくWindows-1252の文字(例:– → –)として読みます。
絵文字などU+FFFFを超える文字は、サロゲートペアの片割れではなく1つのコードポイントとして 😀 のように変換します。
よくある質問
どの文字をエスケープすればよいですか?
HTMLの本文や属性値に文字列を入れるなら、& < > " ' の5つで十分です。古いシステムや文字コードが限られる場所に渡す場合は「ASCII以外のすべて」を選びます。
名前・10進数・16進数のどれを使えばよいですか?
どれもブラウザでは同じ文字になります。読みやすさなら名前(©)、すべての文字に使える点では数値(© / ©)が便利です。
はどう表示されますか?
デコード結果では改行されない空白(U+00A0)になります。見た目は普通の空白と同じですが、別の文字です。
入力した内容は送信されますか?
いいえ。変換はすべてブラウザ内で行い、入力内容を保存・送信しません。
関連ツール
最終更新日: