跳到主要内容
uencoder

读取粘贴文本中的 HTML 实体

把 & < ' 等实体还原为真实字符——并知道何时不该解码。

  1. 1
    HTML 实体解码器 →

    粘贴含实体的文本(& < > " ' ' 及数字形式)。输出将每个实体替换为实际字符,包括非 ASCII 码点。

  2. 2

    了解你的实体:命名实体覆盖 XML/HTML 特殊字符外加一大类目录(© —  );数字形式分十进制 (') 与十六进制 ('),始终映射到 Unicode 码点。若输出在应有文本处出现杂散字符,说明源被双重编码——< 第一遍解码为 <;仅在确认目标数据后再跑一遍。

  3. 3

    何时不该解码: destined 用于 HTML 输出的文本应保持编码状态——解码用户提交内容再未转义渲染是典型的 XSS 注入路径。为阅读和分析而解码;为存储和显示而保留编码。

常见问题

' 和 ' 有什么区别?
二者都表示撇号。' 在 XML 和 HTML5 中合法,但 HTML 4 不含;'(数字形式)到处可用,因此许多编码器输出数字形式。
为什么我的文本含 < 而非 <?
双重编码:字符串被 HTML 转义了两次(模板对已转义数据再次转义时常见)。解码两次恢复原文,然后在源头修复转义。

相关工具