HTML Escape / Unescape
HTMLエスケープ・アンエスケープ
HTMLの特殊文字を文字参照へ変換したり、文字参照を元の文字へ戻したりできます。
変換結果
HTMLエスケープとは
HTMLエスケープは、HTMLで特別な意味を持つ文字を文字参照へ置き換える処理です。たとえば小なり記号は <、大なり記号は >、アンパサンドは & のように表現されます。これにより、HTMLタグとして解釈させず、ソースコードや入力文字列を画面上へそのまま表示できます。
アンエスケープはその逆で、&lt; や &quot; などの文字参照を元の記号へ戻します。ログ、テンプレート、CMS、メール本文、APIレスポンスなどに含まれるエスケープ済み文字列の確認に便利です。
このツールは入力内容をサーバへ送信せず、JavaScriptを使ってブラウザ内だけで変換します。機密性のあるテキストを扱う場合でも、通信を伴う変換ツールより安全に利用できます。ただし、変換結果をWebページへ組み込む際は、利用するフレームワークや表示箇所に応じたセキュリティ対策も確認してください。
使い方
- 変換するHTMLまたは文字参照を入力欄へ貼り付けます。
- 「HTMLをエスケープ」または「HTMLをアンエスケープ」を選びます。
- 「変換する」を押すと結果欄へ自動的に移動します。
- 必要に応じて結果をコピーするか、入力と結果を入れ替えて逆変換します。
変換例
<div class="message">Tom & Jerry</div>
↓
<div class="message">Tom & Jerry</div>
利用時の注意
- エスケープは表示用文字列の作成を支援しますが、SQLインジェクション対策やURLエンコードの代替にはなりません。
- アンエスケープした文字列を innerHTML などへ直接挿入すると、内容によってはスクリプトが実行される危険があります。
- 本ツールでは &、<、>、ダブルクォート、シングルクォートを主な対象として変換します。
よくある質問
HTMLエスケープとは何ですか?
HTMLで特別な意味を持つ記号を、画面に文字として安全に表示できる文字参照へ変換することです。
HTMLアンエスケープとは何ですか?
&lt; や &amp; などの文字参照を、元の < や & などの文字へ戻す処理です。
入力内容はサーバへ送信されますか?
いいえ。変換処理はブラウザ内のJavaScriptだけで行われます。
どの文字が変換されますか?
主にアンパサンド、小なり記号、大なり記号、ダブルクォート、シングルクォートを変換します。
HTMLタグを画面にそのまま表示できますか?
はい。エスケープした結果を使用すると、タグとして解釈されず文字列として表示できます。
XSS対策として使えますか?
HTML本文へ文字列を表示する際の基本対策の一つですが、属性値やJavaScript、URLなど出力先ごとに適切な対策が必要です。
URLエンコードとは何が違いますか?
HTMLエスケープはHTMLで特別な文字を対象にし、URLエンコードはURLで使用できない文字をパーセント形式へ変換します。
改行や空白も変換されますか?
通常の改行や空白はそのまま維持されます。HTML表示時の改行表現は別途CSSやbrタグなどで調整してください。
二重にエスケープするとどうなりますか?
たとえば &lt; のアンパサンドが再変換され、&amp;lt; のようになります。必要以上の複数回変換に注意してください。
変換結果を元に戻せますか?
はい。入力と結果を入れ替え、反対の変換方法を選ぶことで戻せます。
大量のテキストも変換できますか?
ブラウザの処理能力とメモリの範囲内で変換できます。非常に大きなデータでは動作が遅くなる場合があります。