当前位置: 首页 > 面试题库 >

删除\ u2018和\ u2019字符

公良理
2023-03-14
问题内容

我正在使用Beautiful Soup解析网页并在终端上打印访问的网页的名称。但是,网页的名称通常只有一个左字符 (\ u2018) 和右字符
(\ u2019) ,而python无法打印此字符,因为它会给出charmap编码错误。有什么办法可以删除这些字符?


问题答案:

这些代码是Unicode,用于单左和右引号字符。您可以将它们替换为等效的ASCII,Python在您的系统上打印不会出现任何问题:

>>> print u"\u2018Hi\u2019"
‘Hi’
>>> print u"\u2018Hi\u2019".replace(u"\u2018", "'").replace(u"\u2019", "'")
'Hi'

或者使用正则表达式:

import re
s = u"\u2018Hi\u2019"
>>> print re.sub(u"(\u2018|\u2019)", "'", s)
'Hi'

但是,Python也应该毫无疑问地打印它们的Unicode版本。您可能在str()某个地方尝试将unicode转换为ascii并抛出异常。



 类似资料:
  • 问题内容: 我尝试了多种方法将其编码为最终结果,其中最重要的字符是右撇号。 我想要一种使用某些Python内置函数达到最终结果的方法,在这些函数中,普通字符串和unicode字符串之间没有区别。 这是我用来检索字符串的代码: 结果是:缺少撇号。 另一种方法是: 结果是:在python中。 最后,如果我尝试: 结果是: 请不要替换函数,我想使用pythons编解码器库。同样不打印字符串,因为它被保存

  • 问题内容: 我需要从Java中的字符串中删除字符“¼”和“ 1/2”。我怎样才能做到这一点? 我无法控制请求,我必须接受输入内容。基本上,请求字符串具有字符“¼”和“ 1/2”,我需要将它们替换为空字符串。 我尝试将其放在列表中,但不起作用: invalidChars.add(’½’); 然后搜索这个。Jenkins抱怨:无法映射字符,无法编码UTF-8 [INFO] 2错误 问题答案: 从技术上

  • 问题内容: 如何从同一字符串中删除美元符号($)和所有逗号(,)?避免使用正则表达式会更好吗? 问题答案: 像这样 输出

  • 问题内容: 如何从以下词典中删除 u 字符? 此数据来自 find() 查询 这样看起来 问题答案: 某些数据库(例如Sqlite3)允许您定义转换器和适配器函数,因此您可以将文本检索为 str 而不是 unicode 。不幸的是,MongoDB没有为任何常见的类型(例如str,decimal或datetime)提供此选项: http://api.mongodb.org/python/curren

  • 但是,当我尝试使用的输入运行此代码时,我得到了的意外结果 我做错了什么?

  • 问题内容: 我需要从字符串中删除所有不在集合中或不是空格的字符。 有人有功能吗? 问题答案: 听起来您几乎已经知道自己想做的事情,基本上将其定义为正则表达式。