実用ガイド · ウェブとコード
HTML特殊文字:エスケープが必要な場面
テキストとマークアップを区別し、二重変換を防ぎます。文字参照とサニタイズの役割も整理します。
作成 Puffinmint · 更新日
テキストとHTMLの区切りを分ける
HTMLではテキストとタグの区切りに異なる役割があります。文章中で小なり記号やアンパサンドをそのまま表示するには適切な文字参照を使います。
文脈に合わせて一度だけエンコードする
挿入する場所で1回だけエンコードします。タグ自体を見せたいなら区切りも変換します。テンプレートが既にエスケープしている場合、二重変換すると参照名が表示されます。
-
入力
A & B -
計算の手順
方法を選んで実行する
-
結果
A & B
この手順を試す
HTMLエンティティ変換:エンコードとデコード
このガイド内で例を読み込み、ツールを実行し、入力を変えて結果を比較できます。2つ目の実験では別の条件を試します。
1階層だけデコードする
2つ目の例は&lt;です。1回のデコードでは小なり記号ではなく<が返ります。その結果を再度デコードし、1回と2回の違いを確かめます。
結果
値を入力すると結果を確認できます。
アンパサンドと符号化の階層
A & Bを変換するとA & Bです。&lt;を小なり記号へ戻すには2回の復号が必要ですが、このツールは1回だけ行い、<を返します。
利用例
- 入力
A & B- 結果
A & B
エスケープ・無害化・未検証の入力
復号しても信頼できる内容になるわけではありません。マークアップにしない内容はテキストとして扱います。文字参照はサニタイズやJavaScript・CSS・URLの文脈別保護を代替しません。
これは例の入力値で、実際の事例の測定値ではありません。結果は実際のツールと同じ計算エンジンを使います。ガイドの計算手順と比較し、確認後にチェックを付けてください。
| 項目 | 値 |
|---|---|
| このツールにはどのような制限がありますか? | 100,000文字以内。1段階だけ復号してテキストを返します。HTMLのサニタイズは行いません。 |
| 処理とプライバシー | 入力内容と結果はブラウザー内で処理し、サーバーには送信しません。集計統計が有効な場合は、ツール名と処理の成否だけを記録し、内容は記録しません。 |