我有2个两个字符串,我想将它们进行比较。
"Hỗ trợ ngôn ngữ"
我认为这是iso-8859-1编码u'H\u1ed7 tr\u1ee3 ng\xf4n ng\u1eef'
unicode。2个字符串具有相同的内容。我想比较一下。 如何将第一个字符串转换为使用第二个字符串的相同编码。?
答案 0 :(得分:6)
您拥有HTML实体,只需使用HTMLParser
模块即可解决这些问题:
>>> import HTMLParser
>>> h = HTMLParser.HTMLParser()
>>> h.unescape("Hỗ trợ ngôn ngữ")
u'H\u1ed7 tr\u1ee3 ng\xf4n ng\u1eef'
>>> print h.unescape("Hỗ trợ ngôn ngữ")
Hỗ trợ ngôn ngữ
这些HTML实体使用十进制数字,而不是十六进制数字。 7895
是十六进制的1ed7
等。它们编码unicode代码点,不使用UTF-8或ISO-8859-1。 ISO-8859-1或Latin-1甚至不能编码这些特定的代码点(根据谷歌翻译,越南语为“语言支持”)。