EllyTools

画像ツール

計算ツール

テキストツール

カラーツール

ファイルツール

便利ツール

HTMLエスケープ/アンエスケープ

HTMLエンティティの変換と復元をワンクリックで

0 文字
0 文字

◈ 使い方

1

HTMLコードまたは特殊文字を含むテキストを貼り付けてください

2

エスケープをクリックして特殊文字をHTMLエンティティに変換(またはアンエスケープで逆変換)

3

結果をコピーしてHTMLコードに使用してください

❓ よくある質問

関連ツール

◉ こんな方におすすめ

  • ✓安全な表示のためにHTMLをエンコードするWeb開発者
  • ✓投稿にコードスニペットを埋め込むブロガー
  • ✓ウェブページでHTMLコードをテキストとして表示したい方

HTMLエスケープ — タグを文字として表示する

< や & といった実体参照への変換と、その逆変換を行います。コード例をそのまま載せたいとき、入力された文章を安全に表示したいときに使います。

HTMLの中に < を書くと、ブラウザはタグの始まりだと解釈します。だから記事にコード例を載せるとき、そのまま書くと表示されずにタグとして動いてしまいます。

エスケープは、これらの文字を「タグではなく文字だ」と伝える書き方に置き換える作業です。&lt; と書けば < が文字として表示されます。

置き換わる文字

文字実体参照そのまま書くと
<&lt;タグの始まりと解釈される
>&gt;タグの終わりと解釈される
&&amp;実体参照の始まりと解釈される
"&quot;属性の値が途中で切れる
'&#39;同じく属性の値が切れる

安全のためのエスケープ

利用者が入力した文章をそのままページに出すと、その中に書かれたスクリプトが実行されてしまいます。掲示板やコメント欄で古くから起きてきた問題で、クロスサイトスクリプティングと呼ばれます。

入力をエスケープしてから表示すれば、タグは文字として表示されるだけで動きません。ただし、これは表示する側の対策です。データベースに入れる前にエスケープしてしまうと、別の場所で使うときに二重になります。表示する直前に行うのが原則です。

最近のフレームワークは、標準で自動的にエスケープします。自分で組み立てた文字列をHTMLとして挿入する処理を書くときだけ、意識する必要があります。

二重エスケープに注意

すでにエスケープされた文字列をもう一度エスケープすると、&amp;lt; のようになり、画面には &lt; という文字がそのまま表示されます。

このツールは、入力がすでにエスケープされているように見えるときに知らせます。処理の前に、その文字列の状態を確かめてください。

逆変換では、&amp; だけでなく &#39; のような数値参照も元に戻します。

よくある質問

日本語もエスケープされますか?

されません。HTMLで特別な意味を持つ文字だけが対象です。

&amp;lt; と表示されてしまいます。

二重にエスケープされています。一度逆変換してください。

入力値のエスケープはいつ行うべきですか?

保存するときではなく、表示する直前です。保存時に行うと、別の用途で使うときに二重になります。

貼り付けた内容は送信されますか?

されません。処理はすべてブラウザの中で行われます。