XML里预定义的字符实体引用

XML定义了一组预定义的字符实体引用(character entity references),用于转义特定的字符,以确保文档的正确解析和避免语法错误。以下是常见的字符实体引用及其对应的字符:

预定义的字符实体引用

  1. <

    • 表示小于号 <
    • 用途:避免与XML标签的开始标记混淆。
  2. &gt;

    • 表示大于号 >
    • 用途:避免与XML标签的结束标记混淆。
  3. &amp;

    • 表示与符号 &
    • 用途:避免与其他字符实体引用的开头混淆。
  4. &quot;

    • 表示双引号 "
    • 用途:在属性值中使用双引号时避免语法错误。
  5. '

    • 表示单引号 '
    • 用途:在属性值中使用单引号时避免语法错误。

其他常用字符实体引用

除了上述预定义的字符实体引用外,XML还支持通过数字或命名字符实体来表示更多的Unicode字符。以下是一些常用的额外字符实体引用:

  1. &#xA0; 或 &nbsp;

    • 表示不间断空格(no-break space)
    • 用途:防止文本中的空格被浏览器或其他处理程序合并或忽略。
  2. &copy;

    • 表示版权符号 ©
    • 用途:显示版权信息。
  3. &reg;

    • 表示注册商标符号 ®
    • 用途:显示注册商标信息。
  4. &trade;

    • 表示商标符号 ™
    • 用途:显示商标信息。
  5. &mdash;

    • 表示破折号 ---
    • 用途:用于文本格式化,特别是在标点符号中。
  6. &ndash;

    • 表示短破折号 --
    • 用途:用于文本格式化,特别是在标点符号中。
  7. ...

    • 表示省略号 ...
    • 用途:用于表示文本中的省略部分。
  8. << 和 >>

    • 分别表示左双角引号 << 和右双角引号 >>
    • 用途:用于特殊引号样式。
  9. ' 和 '

    • 分别表示左单引号 ' 和右单引号 '
    • 用途:用于特殊引号样式。
  10. " 和 "

    • 分别表示左双引号 " 和右双引号 "
    • 用途:用于特殊引号样式。

使用命名字符实体引用

需要注意的是,并不是所有的XML处理器都支持所有命名字符实体引用。为了确保兼容性,最好使用数字字符实体引用(如 &#x201C; 或 &#8220;)或者只依赖于XML预定义的五个字符实体引用(&lt;, &gt;, &amp;, &quot;, ')。

总结

虽然XML只预定义了五个字符实体引用(&lt;, &gt;, &amp;, &quot;, '),但你可以通过数字字符实体引用或命名字符实体引用表示更多的Unicode字符。在编写XML文档时,使用这些字符实体引用可以确保文档的正确性和可读性,同时避免解析器遇到问题。如果你希望确保最大程度的兼容性,建议尽量使用预定义的字符实体引用或直接使用Unicode字符。

相关推荐
我命由我123454 分钟前
访客系统形式(有用户概念、无用户概念)
java·开发语言·前端·javascript·python·产品运营·产品经理
叼烟扛炮18 分钟前
[LangChain] 学习笔记(02):LCEL 链式调用与动态模型配置实战
服务器·开发语言·网络·笔记·学习·langchain
key_3_feng19 分钟前
评估与对齐:Agent 自我进化的护栏
前端·数据库·agent
LaughingZhu1 小时前
Product Hunt 热榜 2026-10-30:Empacer、Scape、Floot in ChatGPT
java·前端·数据库·人工智能·chatgpt·notion
Lank_M1 小时前
抠图结果缩放后边缘发脏,该怪的不是插值
前端
未来之窗软件服务1 小时前
Linux 运维日志删除的多种方式—东方仙盟
linux·运维·服务器·仙盟创梦ide·东方仙盟
jerrywus1 小时前
Skill、MCP、Workflow、Rules、Memory 有什么区别?拿几次真实开发任务讲清楚
前端·agent·claude
补码缩写1 小时前
canvas 与 sharp 缩放透明图:默认预乘,非预乘得拆通道
前端
静默回滚1 小时前
抠图 PNG 缩小再放大,边缘又糊又白是两件事
前端
小雉系统1 小时前
BcoreOS实战:用一个升级包,让Rocky Linux跑进Debian服务器
linux·运维·服务器·debian