テキストと10進文字参照の変換

文字をAのような10進文字参照に変換したり、文中の10進文字参照を読みやすい文字に戻したりできます。デコードの対象は10進表記のみで、通常の文章や別形式のエスケープはそのまま残します。

ブラウザ内でローカルに実行

文字と数値の表記を切り替える

入力欄には文章、10進文字参照、またはその混在を貼り付けられます。変換はブラウザー内で行い、変換用のリクエストで入力を送信しません。結果はHTMLとして描画せず、通常のテキストとして表示します。

  1. A你😀をエンコードするとA你😀になります。英字や空白、句読点も変換対象です。
  2. デコードする参照は、&#、10進数字、末尾のセミコロンで構成します。たとえば「文字 A」は「文字 A」となり、参照以外の部分も残ります。
  3. 結果をコピーして利用します。もう一度変換する場合は結果を入力欄へ貼り戻してください。入力の編集時とエラー時には古い結果が消え、クリアで入出力を空にできます。

10進文字参照だけを読み取る仕組み

絵文字を1つのコードポイントとして表す

😀は😀になります。旧版の��のようにUTF-16サロゲートの値を別々の参照にした表記は拒否します。UTF-8のバイト列を変換する機能ではありません。

認識するのはセミコロンで終わる10進文字参照です。A、&、\u0041、単独の数値、セミコロンのない&#65はそのまま残ります。ASCIIツールやUnicodeツールの追加形式とは対応範囲が異なります。

1回だけ置換し、周囲の文字を残す

Aをデコードすると文字列としてのAになります。置換によってできた参照を再度処理してAにすることはありません。対応する参照以外の部分を捨てず、HTML文書全体の構文解析や検証もしません。

認識した参照にはhe 1.2.0の厳密チェックを適用します。�、€、サロゲート値、範囲外の�などはエラーです。エンコードでもHTMLで許可されない一部の文字や孤立サロゲートを拒否します。エラー時は部分的な結果や古い出力を残さず、コピーを無効にします。

10進文字参照についての質問

空白や改行を完全に元に戻せますか?

空白の削除やUnicode正規化は行いません。スペースは 、LFは
になります。ただし、入力欄は実際のCR・CRLF改行をLFに変換します。また、変換コアはCRを
にできますが、厳密なデコードは
を拒否します。すべての入力で完全な往復変換ができるわけではありません。

デコードしても変わらないのはなぜですか?

対応する10進文字参照がなければ通常は入力をそのまま返し、空の入力には空の結果を返します。ただし、結果に実際の孤立サロゲートがある場合は拒否します。文字列としての\uD800は実際のサロゲート文字ではなく、そのまま残ります。認識した参照が厳密チェックに失敗する場合もあります。旧名称のNative / Unicodeは、Unicodeエスケープ全形式への対応を意味しません。

最近使ったツール: