我有一個字符串類型的,看起來像這樣:崩潰空白的字符串
"stuff . // : /// more-stuff .. .. ...$%$% stuff -> DD"
,我想脫掉所有的標點,使一切大寫和摺疊所有空格,這樣,它看起來像這樣:
"STUFF MORE STUFF STUFF DD"
這可能與一個正則表達式或我需要結合兩個以上?這是我到目前爲止:
def normalize(string):
import re
string = string.upper()
rex = re.compile(r'\W')
rex_s = re.compile(r'\s{2,}')
result = rex.sub(' ', string) # this produces a string with tons of whitespace padding
result = rex.sub('', result) # this reduces all those spaces
return result
唯一不起作用的是空白崩潰。有任何想法嗎?
我同意這肯定是解決問題的更簡單方法。 – Amber 2009-08-13 22:19:09
我認爲在rex.sub的參數中應該是「string」而不是「result」或者這只是取代用戶代碼的一部分? – 2009-08-14 00:37:27
@Brooks,你是對的 - 我很厭惡內建和標準模塊名稱,任何東西但是我的指尖飛濺。讓我編輯修復,謝謝! – 2009-08-14 01:44:21