繁体   English   中英

在Python 3中替换字符串中的unicode字符

[英]Replacing a unicode character in a string in Python 3

我有一个字符串,其中某些字符显示为unicode,例如:“ bla bla bla \\ uf604 bla bla bla”

我尝试做string = string.replace("\", "X") ,但是什么也没有发生。 我试图将字符串解码为utf-8,但显然在Python 3中不起作用。

如何替换角色?

在Python 3中,这可行(尽管print可能不行,具体取决于您的终端):

>>> s="bla bla bla \uf604 bla bla bla"
>>> print(s)
bla bla bla  bla bla bla
>>> s="bla bla bla \uf604 bla bla bla"
>>> s.replace('\uf604','X')
'bla bla bla X bla bla bla'

但是,也许你有一个文字斜杠,而不是换码。 注意print差异:

>>> s="bla bla bla \\uf604 bla bla bla"
>>> print(s)
bla bla bla \uf604 bla bla bla
>>> s.replace('\uf604','X')
'bla bla bla \\uf604 bla bla bla'

使用转义斜杠来修复:

>>> s.replace('\\uf604','X')
'bla bla bla X bla bla bla'

如果告诉python使用原始字符串,则可以使用replace-method:

s = r"bla bla bla \uf604 bla bla bla"
s = s.replace(r"\uf604", "X")

结果为s ='bla bla bla X bla bla bla'

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM