,我做以下嘗試:問題的重音字符
import re
ER = re.compile(r'\w', re.L)
print(ER.sub('.','Maçã'))
..çã
即使使用re.compile
傳遞區域設置作爲參數,所述修飾是未能識別。 有沒有人有這個問題?
謝謝!
,我做以下嘗試:問題的重音字符
import re
ER = re.compile(r'\w', re.L)
print(ER.sub('.','Maçã'))
..çã
即使使用re.compile
傳遞區域設置作爲參數,所述修飾是未能識別。 有沒有人有這個問題?
謝謝!
你最好使用re.U
unicode標誌。
如果使用Python 2.x的,你還需要指定字符串爲Unicode,即
print(ER.sub('.', u'Maçã'))
對我來說,這隻適用於python3 - 在2.7上,我得到'... . ' – Kimvais 2011-01-24 13:09:02
從http://www.regular-expressions.info/python.html
默認情況下,Python的正則表達式引擎只到Z考慮字母A,數字0到9,以及下劃線作爲「單詞字符」。指定標誌re.L或re.LOCALE,使\ w匹配給定當前語言環境設置的所有字符。或者,您可以指定re.U或re.UNICODE將所有腳本中的所有字母視爲單詞字符。該設置還會影響單詞邊界。
嘗試使用re.UNICODE。
我得到了問題!我正在嘗試在shell中使用此代碼。所以,我需要用這種方式來使用: ' '
進口重新 ER = re.compile(R '\ W',re.L) ER.sub(,統一(' 馬卡',「UTF -8'))
非常感謝! :)
也許有人瞭解巴西人可以把這篇文章翻譯成英文嗎? – 2011-01-24 12:40:14