使用Python提取文本中含有特定字符串的方法示例
今天搞了一天的文本處理,發(fā)現(xiàn)python真的太適合做數(shù)據(jù)處理了。廢話不多說(shuō),一起學(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í)我真正要提取的是每行類(lèi)似上圖紅色框內(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類(lèi)型的字符串
del_string2 = re.sub("-a+\d\d\d\d.wav", "", del_string1)#去掉-a0016.wav類(lèi)型的字符串
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僅匹配字符串開(kāi)頭
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)
接下來(lái)會(huì)更幾篇關(guān)于文本處理的博客,一邊學(xué)習(xí)一邊記筆記。加油!
到此這篇關(guān)于使用Python提取文本中含有特定字符串的文章就介紹到這了,更多相關(guān)Python提取文本特定字符串內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Windows系統(tǒng)中將Python添加到系統(tǒng)環(huán)境詳細(xì)圖文教程
當(dāng)在命令行使用python或pip指令時(shí),可能會(huì)遇到pip不是內(nèi)部命令的報(bào)錯(cuò),這通常是因?yàn)樵诎惭bPython時(shí)未將其添加至系統(tǒng)環(huán)境變量,或者有多個(gè)Python環(huán)境導(dǎo)致路徑不一致,文中將解決辦法介紹的非常詳細(xì),需要的朋友可以參考下2024-10-10
Python開(kāi)發(fā)最牛逼的IDE——pycharm
這篇文章給大家介紹了Python開(kāi)發(fā)最牛逼的IDE——pycharm,主要是介紹python IDE pycharm的安裝與使用教程,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2018-08-08
python如何實(shí)現(xiàn)convolution neural network卷積神經(jīng)網(wǎng)絡(luò)算法
卷積神經(jīng)網(wǎng)絡(luò)(CNN)是深度學(xué)習(xí)中重要的算法之一,主要應(yīng)用于圖像識(shí)別和處理領(lǐng)域,其基本原理是模擬人類(lèi)視覺(jué)系統(tǒng),通過(guò)卷積層、激活函數(shù)和池化層等組件提取圖像的特征,并通過(guò)全連接層進(jìn)行分類(lèi)或其他任務(wù),CNN訓(xùn)練過(guò)程中使用大量標(biāo)記圖像數(shù)據(jù)2024-10-10
python PyQt5/Pyside2 按鈕右擊菜單實(shí)例代碼
本文通過(guò)實(shí)例代碼給大家介紹了python PyQt5/Pyside2 按鈕右擊菜單,代碼簡(jiǎn)單易懂,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2019-08-08
Python常見(jiàn)類(lèi)型轉(zhuǎn)換的小結(jié)
本文主要介紹了Python常見(jiàn)類(lèi)型轉(zhuǎn)換的小結(jié),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-02-02
淺談Python實(shí)時(shí)檢測(cè)CPU和GPU的功耗
本文主要介紹了淺談Python實(shí)時(shí)檢測(cè)CPU和GPU的功耗,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-01-01
python GUI庫(kù)圖形界面開(kāi)發(fā)之PyQt5單行文本框控件QLineEdit詳細(xì)使用方法與實(shí)例
這篇文章主要介紹了python GUI庫(kù)圖形界面開(kāi)發(fā)之PyQt5單行文本框控件QLineEdit詳細(xì)使用方法與實(shí)例,需要的朋友可以參考下2020-02-02
Django框架cookie和session方法及參數(shù)設(shè)置
這篇文章主要為大家介紹了Django框架cookie和session參數(shù)設(shè)置及介紹,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-03-03

