コンテンツへスキップ
uencoder

貼り付けたテキスト内の HTML エンティティを読み取る

&、<、' などを本来の文字に戻します。デコードすべきでないケースも押さえておきましょう。

  1. 1
    HTML エンティティデコーダー →

    エンティティを含むテキスト(& < > " ' ' および数値形式)を貼り付けます。出力では各エンティティが実際の文字(非 ASCII コードポイントを含む)に置き換えられます。

  2. 2

    エンティティの基礎知識:名前付きエンティティは XML/HTML の特殊文字に加え、大きなカタログ(© —  )をカバーします。数値形式には 10 進(')と 16 進(')があり、常に Unicode コードポイントにマッピングされます。出力のテキストがあるべき場所に余分な文字が表示される場合、ソースは二重にエンコードされています。< は 1 回目のデコードで < になります。意図したデータを確認してから再実行してください。

  3. 3

    デコードすべきでない場合:HTML 出力に向けたテキストはエンコードされたままにしてください。ユーザー提供のコンテンツをデコードしてエスケープせずにレンダリングするのが、古典的な XSS インジェクション経路です。読解と分析のためにデコードし、保存と表示のためにエンコードを維持してください。

よくある質問

' と ' の違いは?
どちらもアポストロフィを表します。' は XML と HTML5 で有効ですが、HTML 4 には存在しませんでした。'(数値形式)はどこでも動くため、多くのエンコーダが数値形式を出力します。
なぜ < の代わりに < が含まれるのですか?
二重エンコーディングです。文字列が 2 回 HTML エスケープされています(テンプレートがすでにエスケープ済みのデータをエスケープする場合に多い)。2 回デコードして元に戻し、ソース側のエスケープを修正してください。

関連ツール