如何在 XML 文档中包含 & 字符?

Posted

技术标签:

【中文标题】如何在 XML 文档中包含 & 字符?【英文标题】:How can I include an ampersand (&) character in an XML document? 【发布时间】:2013-01-08 04:14:48 【问题描述】:

如何在保持 XML 有效的同时将 & 符号放入 XML 标记的属性中?

<?xml version="1.0" ?> 
<a text="b&c"/>

当我使用W3School's validator 时,我得到了错误:

EntityRef:期待';'

【问题讨论】:

相关帖子 - How to escape "&" in XML? 【参考方案1】:
Re: XML and ampersand in links - not parsing
You should escape & with 

> Blockquote &amp; in an XML or html document.ocument.

【讨论】:

【参考方案2】:

您可以使用这些转义序列:

< (less-than)                   -   &#60; or &lt;

> (greater-than)                -   &#62; or  &gt;

& (ampersand)                   -   &#38;

' (apostrophe or single quote)  -   &#39;

" (double-quote)                -   &#34;

【讨论】:

Here's a link 了解更多关于这些转义序列的信息。【参考方案3】:

使用字符引用来表示它:&amp;amp;

见specification:

& 符号 (&) 和左尖括号 (&amp; “ 和 ” &amp;lt; " 分别。右尖括号 (>) 可以使用字符串 " &amp;gt; ",并且为了兼容性,必须使用 " &amp;gt; " 或出现在字符串中的字符引用 " ]]&gt; " 在内容中,当该字符串未标记 CDATA 部分的结尾时。

【讨论】:

我比其他问题的其他答案更喜欢这个答案,因为它引用了规范,我能够转义所有潜在的字符,而不仅仅是 OP 的一个字符

以上是关于如何在 XML 文档中包含 & 字符?的主要内容,如果未能解决你的问题,请参考以下文章

如何使字符串“XML 安全”?

如何解析节点名称中包含无效字符的 XML?

如何在查询字符串中包含特殊字符?

如何在 ivy.xml 中包含文件?

如何在字符串中包含空格的 <span> 中应用椭圆效果?

Mongoose 查找数组中包含字符串的所有文档