【字符知识】SGML 类语言(Eg.HTML)字符转义

字符引用示例

&name;
&#dddd;
&#xhhhh;
  • 以上示例,均属于SGML类语言的字符转义序列(escape sequence),他们不是编码。这种字符转义的形式被称作character reference。
  • SGML类语言:包括HTML、XML等在内的标记语言。
     
     

实体字符引用(character entity reference)

  • "& + 预定义的entity名称 + 分号"指代字符;
  • 优点是便于记忆,缺点是可指代的字符有限;

数字字符引用(numeric character reference / NCR)

  • "&#x + Unicode编码十六进制数值 + 分号"

  • "&# + Unicode编码的十进制数值 + 分号"

  • 从HTML4开始,NCR便以Unicode为标准,而与当前文档编码种类无关。

emoji实体字符编码

  • "&#x + Unicode编码十六进制数值 + 分号"

  • "&# + Unicode编码的十进制数值 + 分号"

  • 与普通字符区别:emoji属于四字节单字符,较普通的USC-2字符编码的2字节字符,是其的两倍。所以在符合USC-2编码规范的语言中,emoji通常被转义成两个字符的编码,比普通的字符编码要长。【Unicode编码十六进制数值参考:emoji表情unicode值“U+”后面的16进制代码(转换成10进制即为上文中的“Unicode编码的十进制数值”。16进制与10进制代码均可使用)】【代码参考:http://www.unicode.org/emoji/charts/full-emoji-list.html】

  • emoji字符的提交与转义问题:请参考 http://blog.csdn.net/binjly/article/details/47321043。

  • emoji起源:

    • Emoji图标最初由日本移动运营商开始使用,比如NTT DoCoMo,au,软银移动(前身为沃达丰)。世界上首个emoji图标是由日本人栗田穰崇(Shigetaka Kurita)在1998年或1999年时创造出来的,其中一部分属于NTT DoCoMo团队在打造移动网络平台时的工作成果。栗田从天气预报使用图标来表示天气这一举动中获得了灵感,而日本漫画也给予了栗田启发,在漫画中有一堆图标可以用来表示人物情绪。

参考资料

【1】https://isux.tencent.com/emoji-design-typeface.html emoji绘文字——多终端适配
【2】http://blog.csdn.net/binjly/article/details/47321043 移动端emoji字符提交与转义
【3】http://www.ruanyifeng.com/blog/2014/12/unicode.html JS与Unicode详解
【4】http://tieba.baidu.com/p/4898499851 JS的Unicode天坑
【5】http://emojipedia.org/ emoji百科
【6】http://www.unicode.org Unicode协会官方网站
【7】http://www.unicode.org/emoji/charts/emoji-released.html emoji4.0新增
【8】http://www.unicode.org/emoji/charts/full-emoji-list.html emoji4.0 全部
【9】http://www.unicode.org/emoji/charts/index.html emoji官方说明文档(unicode协会)
【10】http://fashion.163.com/15/1210/07/BAF78KKF00264MK3.html emoji历史

原文地址:https://www.cnblogs.com/dajie-helloworld/p/6322968.html