我有一個單詞的字典列表,一些包含像這樣的序列的單詞:如何檢查字符串中的unicode或轉義序列?
K\xc3\xb6LN
或KöLN
當正確顯示時。
我想清除這些單詞的列表,使它們只包含純ASCII字符。我怎樣才能做一個簡單的真/假檢查,看看一個字符串是否包含這樣的序列?
我有一個單詞的字典列表,一些包含像這樣的序列的單詞:如何檢查字符串中的unicode或轉義序列?
K\xc3\xb6LN
或KöLN
當正確顯示時。
我想清除這些單詞的列表,使它們只包含純ASCII字符。我怎樣才能做一個簡單的真/假檢查,看看一個字符串是否包含這樣的序列?
str.isalpha()
可能有助於在這裏:
>>> 'KöLN'.isalpha()
False
>>> 'K\xc3\xb6LN'.isalpha()
False
>>> 'Cologne'.isalpha()
True
過濾:
>>> [word for word in ('KöLN', 'K\xc3\xb6LN', 'Cologne') if word.isalpha()]
['Cologne']
哪個ASCII字符是純?使用Unicode有什麼可怕的地方?你願意將它改爲「KoLN」並保留它嗎? – 2012-02-12 02:08:30
@JohnMachin這是一個字典攻擊實驗。文字取自/ usr/share/dict – Jon 2012-02-12 02:24:34