哪些是HTML和XML的特殊字符?

哪些是HTML和XML的特殊字符?,xml,http,special-characters,htmlspecialchars,entityreference,Xml,Http,Special Characters,Htmlspecialchars,Entityreference,HTML和XML中的特殊保留字符实体是什么 我掌握的信息表明: HTML: 和(替换为和) (替换为) “(替换为”) ”(替换为) XML: (替换为) 和(替换为和) ”(替换为) “(替换为”) 但我找不到这两个方面的文档 W3C确实提到了某些预定义的实体引用。但它表示这些实体是预定义的(与©;是预定义的方式相同);并不是说他们必须逃脱: [定义:实体和字符引用均可用于 转义左尖括号、符号和其他分隔符。一组 为此指定了通用实体的名称(amp、lt、gt、apos、quot)

HTML和XML中的特殊保留字符实体是什么

我掌握的信息表明:

HTML:

  • (替换为
  • (替换为
  • (替换为
  • (替换为
XML:

  • (替换为
  • (替换为
  • (替换为
  • (替换为
但我找不到这两个方面的文档

W3C确实提到了某些预定义的实体引用。但它表示这些实体是预定义的(与
©;
是预定义的方式相同);并不是说他们必须逃脱:

[定义:实体和字符引用均可用于 转义左尖括号、符号和其他分隔符。一组 为此指定了通用实体的名称(amp、lt、gt、apos、quot) 用途。也可以使用数字字符引用;它们是 识别时立即展开,必须视为字符 数据,因此数字字符引用“<;”和“&;”可能 用于转义 哪些字符必须转义到HTML中的实体引用中? 哪些字符必须转义到XML中的实体引用中


更新

发件人:

符号和字符(
&
)和左尖括号(
)可以使用 字符串“
”和必须,为了兼容,必须使用 “
”或字符串“
]]>
中出现的字符引用” 在内容中,当该字符串未标记CDATA节的结尾时

要允许属性值同时包含单引号和双引号,撇号或单引号字符(
)可以表示为“
”,双引号字符(
)可以表示为“

我认为前者是这样说的

必须是

    • )如果显示为
      ]>
    根本不需要转义;除非您希望在带引号的属性中包含引号


    发件人:

    希望使用“
    ”以避免旧版本出现问题的作者 错误地将其视为标记(标记)结尾的用户代理 关闭分隔符),当它出现在带引号的属性值中时

    作者应使用“
    ”&“(ASCII十进制38)而不是“
    &
    ”以避免 与字符引用(实体)开头混淆 引用开放分隔符)。作者还应使用“
    &”
    属性值,因为CDATA中允许字符引用
    属性值

    一些作者使用字符实体引用“
    ”进行编码 双引号(
    )的实例,因为该字符可能是 用于分隔属性值

    HTML在规则上要模糊得多,但听起来我应该:

    • 应与
    • &
      应与
      &;
    • 应与
    如果
    可以作为实体引用,我也应该将
    替换为
    &


    更新二 发件人:

    对字符串进行转义(出于上述算法的目的)包括 运行以下步骤的步骤:

    将出现的“
    &
    ”字符替换为字符串“
    &

    将出现的U+00A0不间断空格字符替换为 字符串“

    如果在属性模式下调用了算法,请替换任何 字符串“
    ”中出现的“
    ”字符

    如果未在属性模式下调用算法,请替换任何 字符串“
    ”中出现的“
    ”字符

    我读作HTML

    • 作者始终
    • 始终
    • 创建,如果它位于属性内部
    首先,您将a与a进行比较。HTML5与XML的联系比HTML4.01更紧密(这就是为什么我们有XHTML),所以这个答案将坚持使用HTML5和XML

    贵方引用的参考资料在以下几点上是一致的:

    • 应始终用
      表示
    • &
      应始终用
      &
    • 范围内时除外(仅适用于XML)
    我百分之百同意这一点。您永远不希望解析器出错