Hypertoolbox

ウェブ開発ツール

HTMLエンティティエンコーダー/デコーダー - & < > " 変換

<、>、&、" などのHTML特殊文字をエンティティに変換、またはエンティティを元の文字に戻します。コードの断片やユーザー入力を安全にページに埋め込むときに使います。

HTMLエンティティが必要になるとき

ウェブページの本文に <script> タグをそのまま書くと、ブラウザはそれを文字ではなく実際のタグとして解釈します。そのため、コード例をそのまま表示したり、ユーザーが送信したテキストをそのまま画面に映すには、<>&" などの特殊文字を &lt;&gt;&amp;&quot; に変える必要があります。これをHTMLエスケープと呼びます。

このツールはその変換を一度に行います。エンティティにエンコードボタンが特殊文字を安全な形に変え、逆方向はスクレイピングしたデータに混じったエンティティを読みやすい文字に戻します。

こんな方に特に役立ちます

  • ブロガー・テクニカルライター — 記事にHTMLタグやコードの断片を安全に掲載するとき
  • ウェブ開発者 — テンプレートエンジンなしで静的ページを直接書くとき
  • マーケター・コンテンツライター — メールやPDFから貼り付けた &amp; だらけのテキストを整理するとき
  • QAエンジニア・データアナリスト — スクレイピング結果に混じったエンティティを読むとき

使い方

  1. 左側の入力欄にテキストまたはHTMLを貼り付けます。
  2. エンティティにエンコードボタンを押すと、特殊文字がエンティティに変換されて右側に表示されます。逆方向はエンティティからデコードボタンを使います。
  3. 「ASCII以外のすべての文字を数値エンティティに変換」をオンにすると、韓国語・日本語・絵文字まで &#... 形式に変換されます。メールエンコードなど特殊な目的に限って使ってください。

注意点

HTMLエスケープだけではすべてのXSS攻撃を防げるわけではありません。ユーザー入力を属性値やURLに入れるときは、その文脈に応じた追加処理が必要です。このツールは基本的な本文のエスケープとデコードを素早く処理するためのものです。

よくある質問

既定では <>&"'(シングルクォート)を変換します。「すべての文字を数値エンティティに」オプションをオンにすると、ASCII範囲外の文字まで &#NNNN; 形式に変換されます。

いいえ。エンコードとデコードはブラウザ内だけで行われます。機密性の高いコンテンツも外部に送信されないため、安全に扱えます。

いいえ。本文に置くテキストの基本的なエスケープは処理しますが、属性値やURLに入れる値には文脈に応じた追加エンコードが必要です。セキュリティが重要な場面では、各言語やフレームワークが提供する専用のエスケープ関数を併用してください。

どちらも同じ文字を指します。名前付きエンティティは &amp; のように名前で表し、数値エンティティはUnicodeのコードポイントで &#38; のように表します。名前付きは対応文字が限られますが、数値エンティティは任意のUnicode文字を表現できるためより汎用的です。

Share this page

Related tools