本文實例講述了Python實現(xiàn)簡單文本字符串處理的方法。分享給大家供大家參考,具體如下:
對于一個文本字符串,可以使用Python的string.split()方法將其切割。下面看看實際運行效果。
mySent = 'This book is the best book on python!'print mySent.split()
輸出:
['This', 'book', 'is', 'the', 'best', 'book', 'on', 'python!']
可以看到,切分的效果不錯,但是標(biāo)點符號也被當(dāng)成了詞,可以使用正則表達式來處理,其中分隔符是除單詞、數(shù)字外的任意字符串。
import rereg = re.compile('//W*')mySent = 'This book is the best book on python!'listof = reg.split(mySent)print listof輸出為:
['This', 'book', 'is', 'the', 'best', 'book', 'on', 'python', '']
現(xiàn)在得到了一系列詞組成的詞表,但是里面的空字符串需要去掉。
可以計算每個字符串的長度,只返回大于0的字符串。
import rereg = re.compile('//W*')mySent = 'This book is the best book on python!'listof = reg.split(mySent)new_list = [tok for tok in listof if len(tok)>0]print new_list輸出為:
['This', 'book', 'is', 'the', 'best', 'book', 'on', 'python']
最后,發(fā)現(xiàn)句子中的第一個字母是大寫的。我們需要同一形式,把大寫轉(zhuǎn)化為小寫。Python內(nèi)嵌的方法,可以將字符串全部轉(zhuǎn)化為小寫(.lower())或大寫(.upper())
import rereg = re.compile('//W*')mySent = 'This book is the best book on python!'listof = reg.split(mySent)new_list = [tok.lower() for tok in listof if len(tok)>0]print new_list輸出為:
['this', 'book', 'is', 'the', 'best', 'book', 'on', 'python']
下面來看一封完整的電子郵件:
內(nèi)容
Hi Peter,With Jose out of town, do you want tomeet once in a while to keep thingsgoing and do some interesting stuff?Let me knowEugene
import rereg = re.compile('//W*')email = open('email.txt').read()list = reg.split(email)new_txt = [tok.lower() for tok in list if len(tok)>0]print new_txt輸出:
希望本文所述對大家Python程序設(shè)計有所幫助。
新聞熱點
疑難解答
圖片精選