python 中的字符编码将"u2019"替换为"



我尝试了多种方法将其编码为最终结果"BACK RUSHIN'",其中最重要的字符是右撇号'

我想用Python的一些内置函数来达到这个最终结果,在这些函数中,普通字符串和unicode字符串之间没有区别。

这是我用来检索字符串的代码:str(unicode(etree.tostring(root.xpath('path')[0],method='text', encoding='utf-8'),errors='ignore')).strip()

结果是:'BACK RUSHIN',省略了撇号'

另一种方式是:root.xpath('path/text()')

结果是:python中的u'BACK RUSHINu2019'

最后,如果我尝试:u'BACK RUSHINu2019'.encode('ascii', 'replace')

结果是:'BACK RUSHIN?'

请不要替换函数,我想使用Python的编解码器库。也没有打印字符串,因为它被保存在一个变量中。

感谢

>>> import unidecode
>>> unidecode.unidecode(u'BACK RUSHINu2019')
"BACK RUSHIN'"

unidecode

最新更新