HTMLエンティティ エンコーダー & デコーダー

予約済み HTML 文字をエンティティへエンコードし、HTML エンティティを読みやすいテキストへデコードします。スニペット、CMS コンテンツ、テンプレートに便利です。

HTML エンティティのエスケープは完全な XSS サニタイザではなく、表現だけを変えます。処理はブラウザ内だけです。

名前は & / < / > / "、数値は & / < / > / " です。デコードは両方受け付けます。エスケープは完全な XSS サニタイズではありません。

  • 入力0
  • 出力0
  • オプション名前 (&)

入力

出力

このツールについて

予約文字(& < > " ')を HTML エンティティへエンコードし、エンティティを読みやすいテキストへデコードします。エンコード時は 名前(&amp; &lt;)または 数値(&#38; &#60;)を選べ、デコードは両方受け付けます。

テキスト・属性・スクリプト・CSS・XML の規則は同一ではありません。スニペットや CMS、フィード確認向けで、信頼できない HTML にはフレームワークのエスケープとサニタイザが必要です。変換はブラウザ内だけです。

よくある用途

  • ドキュメントやブログでマークアップをタグとして解釈させずに見せる
  • CMS / WYSIWYG の二重エンコード(&amp;amp;)の確認・修正
  • RSS/Atom などのフィード用タイトル・説明で & をエスケープ

使い方

  1. Encode または Decode を選びます。入力に応じて結果が更新されます。
  2. Encode で Numeric をオフにすると名前実体、オンにすると十進参照になります。
  3. テキストまたはエンティティを貼り、Sample で <div> の往復を確認します。
  4. 結果をコピーします。信頼できない HTML は別途サニタイズしてください。

Named vs numeric

入力名前エンコード数値エンコード
<div>&lt;div&gt;&#60;div&#62;
Tom & JerryTom &amp; JerryTom &#38; Jerry
"quote"&quot;quote&quot;&#34;quote&#34;

例

入力 / 設定出力メモ
<div> → 名前&lt;div&gt;マークアップを文字として表示
&lt;div&gt; → デコード<div>サンプルの往復
Tom & Jerry → 名前Tom &amp; JerryHTML/XML テキスト向け &
A > B → 数値A &#62; Bデコード時は &gt; と同じ

実務での落とし穴

  • テキストのエスケープは HTML サニタイズではありません。属性や javascript: URL、SVG/スクリプトは別対策が必要です。
  • CMS 往復後の &amp;lt; のような二重エンコードはよくあります。一度デコードして追加パスが要るか確認してください。
  • 予約文字 5 種のみです。すべての Unicode を &#x…; にする用途ではありません(Unicode ツールを使ってください)。

参考資料

最終更新: 2026-07-26

よくある質問

HTML エンティティはいつエンコードしますか?
コードサンプル、CMS 欄、RSS/Atom のタイトル、ユーザー入力など、HTML 内で `<` `>` `&` をマークアップではなく 文字として見せたいときに使います。
XSS を防げますか?
いいえ。テキスト文脈の表現を変えるだけです。属性・URL・スクリプト・CSS まで守る完全なサニタイザではないため、 信頼できない HTML にはフレームワークのエスケープと専用サニタイザを使ってください。
名前実体と数値実体の違いは?
`&amp;` や `&lt;` のような名前付きと、`&#38;` や `&#60;` のような十進参照があります。デコードは両方対応し、 エンコード時に好みのスタイルを選べます。
入力はサーバーへ送られますか?
いいえ。変換はブラウザ内だけで実行されます。