使用Python提取文本中含有特定字符串的方法示例
今天搞了一天的文本處理,發(fā)現(xiàn)python真的太適合做數(shù)據(jù)處理了。廢話不多說,一起學(xué)習(xí)吧!
1.我的原始數(shù)據(jù)是這樣的,如圖

2.如果要提取每行含有pass的字符串,代碼如下:
import re
filepath = "E:/untitled1/analyze_log/test.log"
txt = open(filepath, "r").read()
result=""
test_text = re.findall("..............+pass", txt)#取出每行含有pass的文本
result = result +'\n'.join(test_text)#換行輸出
print(result)
3.執(zhí)行上面代碼,可以取出每行含有pass的文本,如圖:

4.其實(shí)我真正要提取的是每行類似上圖紅色框內(nèi)的字符串,代碼實(shí)現(xiàn)如下:
import re
filepath = "E:/untitled1/analyze_log/test.log"
txt = open(filepath, "r").read()
result=""
test_text = re.findall("..............+pass", txt)#取出每行含有pass的文本
result = result +'\n'.join(test_text)#換行輸出
del_num = re.sub("\d+ ", "", result)#去掉每行行首的數(shù)字
del_awake = del_num.replace("awake", "")#去掉awake
del_commd = del_awake.replace("commd", "")#去掉commd
del_string1 = re.sub("-a+\d\d\d\d-\d.wav", "", del_commd)#去掉-a0023-1.wav類型的字符串
del_string2 = re.sub("-a+\d\d\d\d.wav", "", del_string1)#去掉-a0016.wav類型的字符串
print(del_string2)
5.執(zhí)行上面代碼,可以取出最后我需要的文本,如圖:

6.拓展

7.示例代碼
import re
str = 'Hello123/World 45_?6bye'
result1 = re.findall('\d',str)#\d匹配任何十進(jìn)制數(shù)
result2 = re.findall('\d+',str)#\d+可匹配一位或多位數(shù)字使用
result3 = re.findall('\D',str)#\d匹配非數(shù)字字符任何十進(jìn)制數(shù)
result4 = re.findall('\w',str)#\w匹配任何字母數(shù)字字符,包括下劃線在內(nèi)
result5 = re.findall('\W',str)#\W匹配非任何字母數(shù)字字符,包括下劃線在內(nèi)
result6 = re.findall('\s',str)#\s匹配任何空白字符
result7 = re.findall('\S',str)#\S匹配非任何空白字符
result8 = re.findall('\AHello',str)#\A僅匹配字符串開頭
result9 = re.findall('bye\Z',str)#\Z僅匹配字符串結(jié)尾
print(result1)
print(result2)
print(result3)
print(result4)
print(result5)
print(result6)
print(result7)
print(result8)
print(result9)
接下來會更幾篇關(guān)于文本處理的博客,一邊學(xué)習(xí)一邊記筆記。加油!
到此這篇關(guān)于使用Python提取文本中含有特定字符串的文章就介紹到這了,更多相關(guān)Python提取文本特定字符串內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Windows系統(tǒng)中將Python添加到系統(tǒng)環(huán)境詳細(xì)圖文教程
當(dāng)在命令行使用python或pip指令時,可能會遇到pip不是內(nèi)部命令的報錯,這通常是因?yàn)樵诎惭bPython時未將其添加至系統(tǒng)環(huán)境變量,或者有多個Python環(huán)境導(dǎo)致路徑不一致,文中將解決辦法介紹的非常詳細(xì),需要的朋友可以參考下2024-10-10
python如何實(shí)現(xiàn)convolution neural network卷積神經(jīng)網(wǎng)絡(luò)算法
卷積神經(jīng)網(wǎng)絡(luò)(CNN)是深度學(xué)習(xí)中重要的算法之一,主要應(yīng)用于圖像識別和處理領(lǐng)域,其基本原理是模擬人類視覺系統(tǒng),通過卷積層、激活函數(shù)和池化層等組件提取圖像的特征,并通過全連接層進(jìn)行分類或其他任務(wù),CNN訓(xùn)練過程中使用大量標(biāo)記圖像數(shù)據(jù)2024-10-10
python PyQt5/Pyside2 按鈕右擊菜單實(shí)例代碼
本文通過實(shí)例代碼給大家介紹了python PyQt5/Pyside2 按鈕右擊菜單,代碼簡單易懂,非常不錯,具有一定的參考借鑒價值,需要的朋友參考下吧2019-08-08
python GUI庫圖形界面開發(fā)之PyQt5單行文本框控件QLineEdit詳細(xì)使用方法與實(shí)例
這篇文章主要介紹了python GUI庫圖形界面開發(fā)之PyQt5單行文本框控件QLineEdit詳細(xì)使用方法與實(shí)例,需要的朋友可以參考下2020-02-02
Django框架cookie和session方法及參數(shù)設(shè)置
這篇文章主要為大家介紹了Django框架cookie和session參數(shù)設(shè)置及介紹,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-03-03

