解析包含Unicode字符名称的字符串

时间:2015-06-10 05:23:29

标签: python unicode

我有一个字符串

>>> s
u'M\\N{AMPERSAND}M\\N{APOSTROPHE}s'
>>> print s
M\N{AMPERSAND}M\N{APOSTROPHE}s

如何将其转换为M&M's

2 个答案:

答案 0 :(得分:3)

您可以使用unicode_escape encoding

在Python 2.x中:

>>> u'M\\N{AMPERSAND}M\\N{APOSTROPHE}s'.decode('unicode-escape')
u"M&M's"

在Python 3.x中:

>>> u'M\\N{AMPERSAND}M\\N{APOSTROPHE}s'.encode().decode('unicode-escape')
"M&M's"

答案 1 :(得分:1)

看到你的print命令我假设你正在使用Python 2。 您可以使用decode()输入作为您正在使用的编码,例如'unicode-escape'

>>> s
u'M\\N{AMPERSAND}M\\N{APOSTROPHE}s'
>>>s.decode('unicode-escape')
>>> print s
"M&M's"