熱線電話:13121318867

登錄
首頁精彩閱讀Python實現簡單文本字符串處理的方法
Python實現簡單文本字符串處理的方法
2018-02-16
收藏

Python實現簡單文本字符串處理的方法

本文實例講述了Python實現簡單文本字符串處理的方法。分享給大家供大家參考,具體如下:
對于一個文本字符串,可以使用Python的string.split()方法將其切割。下面看看實際運行效果。    
mySent = 'This book is the best book on python!'
print mySent.split()

輸出:
    
['This', 'book', 'is', 'the', 'best', 'book', 'on', 'python!']

可以看到,切分的效果不錯,但是標點符號也被當成了詞,可以使用正則表達式來處理,其中分隔符是除單詞、數字外的任意字符串。    
import re
reg = 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', '']

現在得到了一系列詞組成的詞表,但是里面的空字符串需要去掉。

可以計算每個字符串的長度,只返回大于0的字符串。    
import re
reg = 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']

最后,發現句子中的第一個字母是大寫的。我們需要同一形式,把大寫轉化為小寫。Python內嵌的方法,可以將字符串全部轉化為小寫(.lower())或大寫(.upper())    
import re
reg = 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']

下面來看一封完整的電子郵件:

內容    
Hi Peter,
 
With Jose out of town, do you want to
meet once in a while to keep things
going and do some interesting stuff?
 
Let me know
Eugene    
import re
reg = 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

輸出:
代碼如下:
['hi', 'peter', 'with', 'jose', 'out', 'of', 'town', 'do', 'you', 'want', 'to', 'meet', 'once', 'in', 'a', 'while', 'to', 'keep', 'things', 'going', 'and', 'do', 'some', 'interesting', 'stuff', 'let', 'me', 'know', 'eugene']

數據分析咨詢請掃描二維碼

若不方便掃碼,搜微信號:CDAshujufenxi

數據分析師資訊
更多

OK
客服在線
立即咨詢
日韩人妻系列无码专区视频,先锋高清无码,无码免费视欧非,国精产品一区一区三区无码
客服在線
立即咨詢