HTMLエンティティ変換
テキストをHTMLエンティティにエンコードしたり、エンティティをテキストにデコードしたりします。UTF-8対応でクライアントサイドで処理されます。
HTMLエンコードの使い方
- 01
テキストまたはHTMLを貼り付けてください。
- 02
「エンコード」(HTML特殊文字をエスケープ)、「すべてエンコード」(ASCII以外もエスケープ)、または「デコード」を選択してください。
- 03
変換結果をコピーしてください。
何をするのか
特殊文字をエスケープして、マークアップとして解釈されるのではなくテキストとして表示するための HTML エンティティ エンコーダおよびデコーダ。 < や & などの文字を < や & などのエンティティに変換し、再度デコードします。
エンコードとデコードは UTF-8 で安全で、ブラウザ内で完全に実行されるため、貼り付けたものはアップロードされません。
エンコードの仕組み
エンコードでは、HTML で特別な意味を持つ 5 つの文字、& < > " および ' が常にエスケープされます。これにより、タグの開始として読み取られる、またはテキストが誤って属性からはみ出すことを防ぐことができます。
さらに、「すべてエンコード」オプションは、すべての非 ASCII 文字を数値エンティティに変換します。これは、レガシー システム、一部の電子メール パイプライン、または出力が純粋な ASCII であることを確認する必要がある場所に便利です。
デコードで理解できること
デコードでは、& や © などの名前付きエンティティ、é などの 10 進数エンティティ、€ などの 16 進数エンティティの 3 つのエンティティ形式をすべて理解します。認識されないシーケンスは、破壊されるのではなく、そのまま残されます。
エンコーディングとXSS
HTML スペシャルのエスケープは、HTML インジェクションとクロスサイト スクリプティング (XSS) に対する中心的な防御策です。信頼できないテキストは、ページに配置される前にエンコードする必要があるため、アクティブなマークアップではなく無害な文字としてレンダリングされます。
よくある質問
「エンコード」と「すべてエンコード」の違いは何ですか?
「エンコード」はHTMLでエスケープが必要な5文字(& < > " ')のみをエスケープします。「すべてエンコード」はさらにすべてのASCII以外の文字を数値エンティティに変換します。レガシーシステムやメールに便利です。
どのエンティティをデコードできますか?
&や©などの名前付きエンティティ、éなどの10進数エンティティ、€などの16進数エンティティをデコードできます。未知のシーケンスはそのまま残ります。
XSSを防止できますか?
HTML特殊文字のエンコードはマークアップのインジェクションに対する核心的な防御手段です。信頼されていないテキストをHTMLに配置する前に常にエンコードしてください。