100% ローカル — データがブラウザの外に出ることはありません

HTML実体参照をテキストに変換|取り出した断片をそのまま読む

HTMLの実体参照を文字に戻します。数値参照はすべて扱え、知らない名前はそのまま見える形で残るので、もともと何が書かれていたのかを、その場で目で確かめられます。

高速 プライベート Cookieゼロ

HTML Entities 入力

Text 出力

このツールの動作

&…; の各参照は、それが指す文字になります。

  • 数値・十進 — é は é になります。
  • 数値・十六進 — é も é も é になります。
  • 名前付き — &、 、—、é ほか、よく使う六十ほどの名前。

基本多言語面の外の文字も、一つの参照で入って一つの文字で出ます。😀 と 😀 はどちらも絵文字になります。

未知の名前は見える形で残る

♥ は ♥ のまま出ます。

HTML5 は二千を超える名前を定義します。このツールは実際に出会うものを持ち、それ以外には手を触れません。ほかの選択肢のほうが悪いからです。認識できない参照を消せば、データが黙って失われます。推測すれば、元になかった文字を作り出します。見える形で残せば、何が処理されなかったかが正確に分かり、数値形式なら必ず通ります。

復号は一回だけ

&amp;lt; は < ではなく &lt; になります。

これは制限ではなく正解です。&amp;lt; は、元の文字列が &lt; という四文字そのものだったときに符号化器が作る形なので、一回の通過でその元の文字列がそのまま返ります。復号器をもう一度かければ、エスケープ済みのマークアップが生きたマークアップになります。エスケープが防ごうとしているのは、まさにその失敗です。

セミコロンは必須

&amp x には手を触れません。ブラウザは終端のない参照の一部を実際に復号します。九十年代に書かれた文書との互換のためですが、どれを復号するかはパーサーと文脈によります。セミコロンを要求すれば、結果がどのパーサーに尋ねたかに左右されません。

何の文字も指さない参照

次の三つは復号せず、書かれたまま返します。

  • &#0; — NUL は HTML に正当な表現を持たず、生成すれば C 文字列を切り、SQL の挿入文を壊し、結果を読む側を破損させます。
  • &#xD800; から &#xDFFF; — サロゲートの片割れは文字ではなく、符号化の副産物にすぎません。
  • &#1114111; を超えるもの — Unicode の上限より先です。

入力した参照がそのまま見えます。それが、何も指していなかったという正直な合図です。

プライバシー

すべての処理はブラウザ内のJavaScriptだけで完結します。データがアップロードされることはないため、機密情報でも安心して利用でき、オフラインでも動作します。

よくある質問

なぜ &hearts; が出力に残っているのですか。
このツールが復号する名前の一覧に入っていないからです。消したり推測したりするより、見える形で残すほうが安全です。HTML5 は二千を超える名前を定義します。よく使うものは網羅し、それ以外は入力どおり残るので、何が処理されなかったかが分かります。数値形式 `&#9829;` は復号されます。
なぜ &amp;lt; は &lt; までにしかならないのですか。
復号を一回しか行わないからです。`&amp;lt;` は、元の文字列が `&lt;` という四文字そのものだったときに符号化器が作る形です。だから一回の復号でその元の文字列が返るのが正解です。二回復号すれば、エスケープ済みのマークアップが生きたマークアップに戻ります。エスケープが防ごうとしているのは、まさにそれです。
なぜ &#0; はそのまま残ったのですか。
生成すべき文字が存在しないからです。NUL は HTML 文書に正当な表現を持たず、出力すれば C 文字列を途中で切り、SQL の挿入文を壊し、結果を読む側を破損させます。サロゲートの片割れや U+10FFFF を超える値も同じで、参照は書かれたまま返ります。

関連ツール