您好,登錄后才能下訂單哦!
今天就跟大家聊聊有關認識XML中的字符實體與字符數據,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。
字符實體
在我們了解字符實體之前,先了解一下什么是 XML 實體。
W3 聯盟 對實體的定義:文檔實體作為實體樹的根元素和 XML 處理程序的起點。
這意味著實體就是 XML 中的占位符。它們可以聲明在文檔序言或者DTD中。實體有不同的類型,本章后面會討論字符實體。
HTML 和 XML 都有一些符號被保留使用,它們不能在 XML 代碼中用作內容。例如,< 和 > 符號被用作 XML 標簽的開頭和結尾。要顯示這些特殊字符,就要使用字符實體。
有些特殊的字符或符號還不能直接使用鍵盤輸入。可以使用字符實體來顯示這些符號或特殊字符。
字符實體類型
有三種類型的字符實體:
預定義的字符實體。
編碼字符實體。
命名字符實體。
預定義的字符實體
引入它們是為了避免使用某些有歧義的符號。例如,當我們把小于(<)或大于(>)符號當尖括號(<>)使用時就會產生歧義。字符實體從根本上來說就是用來界定 XML 標簽的。下面是一個來自 XML 規范的預定義字符實體列表。它們可以用來表示某些字符而不帶歧義。
和號: &
單引號: '
大于: >
小于: <
雙引號: "
數字字符實體
數字引用被用來表示字符實體。數字引用可以是十進制或十六進制格式。由于有數以千記的數字引用,導致很難記住它們。數字引用通過使用字符在 Unicode 字符集中的編碼數值來表示。
十進制數字引用基本語法:
&# decimal number ;
十六進制數字引用基本語法:
&#x Hexadecimal number ;
下面的表格列出了一些預定義字符實體和它們對應的數值:
實體名稱 | 字符 | 十進制引用 | 十六進制引用 |
---|---|---|---|
quot | " | " | " |
amp | & | & | & |
apos | ' | ' | ' |
lt | < | < | |
gt | > | > | > |
命名字符實體
正如上面所說的,數值字符很難記住,最受歡迎的字符實體類型是命名字符實體。因為每個實體都用一個名稱標識。
例如:
'Aacute' 表示帶重音符的大寫 A 字符。 'ugrave' 表示帶沉音符的小寫 u。
CDATA 片段
術語 CDATA 就是字符數據。CDATA 被定義為不由解析器解析的文本塊,但它被公認為標記。
標記中預定義的實體比如 <,> 和 & 需要手動輸入并且通常難以閱讀。這種情況下就可以使用 CDATA 片段。通過使用 CDATA 片段,我們可以告訴解析器文檔的特定部分不包含標記,應該被當做普通文本對待。
語法
下面是 CDATA 片段的語法:
<![CDATA[ characters with markup ]]>
上面的語法由三個部分組成:
CDATA 開始部分 - CDATA 以9個字符的分隔符<![CDATA[開頭。
CDATA 結束部分 - CDATA 以 ]]> 分隔符結尾。
CData 部分 - 上面這兩個標記之間的字符被解釋為字符而不是標記。這個部分可以包含標記字符(<,> 和 &),但是它們會被 XML 處理程序忽略。
示例
下面的標記代碼展示了 CDATA。其中寫在 CDATA 片段中的字符都會被解析器忽略。
<script> <![CDATA[ <message> Welcome to TutorialsPoint </message> ]] > </script>
在上述的語法中,<message> 和 </message> 之間的所有內容都會被當做字符數據而不是標記。
CDATA 規則
XML CDATA 需要遵循以下規則:
XML 文檔任何位置的 CDATA 都不能包含 "]]>" 字符。
CDATA 片段不可以嵌套。
看完上述內容,你們對認識XML中的字符實體與字符數據有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。