本文へスキップ
Utilizy

HTML エンティティ変換

特殊文字のエスケープと復元

ブラウザ内で処理

入力

オプション

結果

結果

まだ入力されていません

テキストを貼り付けると、ここに変換結果が表示されます。

よく使うエンティティ

  • &&
  • <&lt;
  • >&gt;
  • "&quot;
  • '&#39;
  • (スペース)&nbsp;
  • ©&copy;
  • ®&reg;
  • &trade;
  • &euro;
  • ·&middot;
  • &hellip;
  • &mdash;
  • &rarr;
  • &starf;

UTF-8 のページでは、& < > をエスケープすれば十分です。

山括弧やアンパサンドは HTML では構造であって文字ではありません。エスケープせずにページに入れると、レイアウトが壊れるかインジェクションの穴が開きます。エンティティに変換すれば、その文字そのものとして表示されます。

使い方

  1. 1 エンコードかデコードを選びます。
  2. 2 テキストか HTML を貼り付けます。
  3. 3 出力先のページに文字コードの宣言がない場合は、全エスケープのオプションをオンにします。
  4. 4 結果をコピーします。

よくある質問

実際にエスケープが必要な文字はどれですか。

テキスト部分では & と <。属性値ではさらに " と '。> は必須ではなく慣習です。これらをエスケープすればインジェクションのリスクは押さえられます。

日本語やアクセント付き文字もエスケープすべきですか。

現代の UTF-8 のページでは不要です。そのままで動作し、ソースも読みやすいままです。出力先の文字コードが不明だったりレガシーだったりする場合にのみ、すべてエスケープしてください。

エスケープすれば XSS を防げますか。

防御の中核ではありますが、文脈が重要です。ページ内のテキストには HTML エスケープが必要ですが、script タグ内や URL 属性内の値には別のエスケープが必要です。文脈を取り違えたエスケープでは穴が残ります。

一緒に使うと便利なツール