簡體   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