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字符。

相关推荐
程序员码歌27 分钟前
明年35岁了,如何破局?说说心里话
android·前端·后端
博客zhu虎康1 小时前
React Hooks 报错?一招解决useState问题
前端·javascript·react.js
灰海2 小时前
vue中通过heatmap.js实现热力图(多个热力点)热区展示(带鼠标移入弹窗)
前端·javascript·vue.js·heatmap·heatmapjs
搞全栈小苏2 小时前
基于Qt QML和C++的MQTT测试客户端(CMakeLists实现)
xml·c++·qt
王源骏2 小时前
LayaAir鼠标(手指)控制相机旋转,限制角度
前端
大虾写代码2 小时前
vue3+TS项目配置Eslint+prettier+husky语法校验
前端·vue·eslint
2301_780789663 小时前
渗透测试真的能发现系统漏洞吗
服务器·网络·安全·web安全·网络安全
wordbaby3 小时前
用 useEffectEvent 做精准埋点:React analytics pageview 场景的最佳实践与原理剖析
前端·react.js
上单带刀不带妹3 小时前
在 ES6 中如何提取深度嵌套的对象中的指定属性
前端·ecmascript·es6
excel3 小时前
使用热力贴图和高斯函数生成山峰与等高线的 WebGL Shader 解析
前端