numeric character reference(NCR),直译就是数字字符引用。一个Numeric Character Reference编码是由一个与号(&)跟着一个井号(#),然后跟着这个字符的Unicode编码值,最后跟着一个分号组成的,就像上面的例子一样。
有了数字字符引用,就可以在网页中显示Unicode字符了,不用考虑html文件本身的编码,因为数字字符引用只用到ASCII字符集里的字符。所以,即使在gb2312编码的网页中,也可以用NCR显示埃及的象形文字了。
如何在python中处理&#X开头的字符串呢?
# coding=utf-8
def dec(a):
# &#x 开头 解码 : 以 &# 或 &#x 开头的字符串叫做 NCR 字符
# 通过 py2.x下的HTMLParser 或 py3.x下的html 的 unescape() 方法来转换成能看懂的中文字符
aa = a.replace(';', '').replace('&#x', '\\u').encode('utf-8').decode('unicode_escape')
print(aa)
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) | 黑马程序员IT技术论坛 X3.2 |