python截取兩個(gè)單詞之間的內(nèi)容方法
1. __init__ 初始化文件路徑,關(guān)鍵字1,關(guān)鍵字2;
2. key_match 使用with open 方法,以二進(jìn)制方式(也可以改成utf-8,GB2312)讀取文件內(nèi)容(支持txt/log格式);
3. buffer = f.read() 一致性讀取到buffer中,讀取超大文件會(huì)發(fā)生MemoryError(可以設(shè)置每次讀取的size或切割文件)。
#!/usr/bin/python3
# -*- coding: utf-8 -*-
import re
#文本所在路徑,引號(hào)前加r指按路徑處理
#關(guān)鍵字word1,word2,換關(guān)鍵字,需修改引號(hào)間的內(nèi)容
class match2Words(object):
lines=0
def __init__(self,path,word1,word2):
self.path = path
self.word1 = word1
self.word2 = word2
def key_match(self):
with open(self.path,'rb') as f:
buffer = f.read()
pattern = re.compile(self.word1+b'(.*?)'+self.word2,re.S)
result = pattern.findall(buffer)
if result != []:
print(result)
#self.lines +=1
#print("匹配到的行數(shù):",self.lines)
else:
print("沒(méi)有找到你輸入的關(guān)鍵字")
path = input("請(qǐng)輸入要分析的log地址:")
word1 = b"begin"
word2 = b"end"
matchWords = match2Words(path, word1, word2)
matchWords.key_match()
以上這篇python截取兩個(gè)單詞之間的內(nèi)容方法就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Pandas.DataFrame行和列的轉(zhuǎn)置的實(shí)現(xiàn)
本文主要介紹了Pandas.DataFrame行和列的轉(zhuǎn)置的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-02-02
初學(xué)python的操作難點(diǎn)總結(jié)(新手必看篇)
下面小編就為大家?guī)?lái)一篇初學(xué)python的操作難點(diǎn)總結(jié)(新手必看篇)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-08-08
Python實(shí)現(xiàn)數(shù)據(jù)可視化案例分析
這篇文章主要介紹了Python實(shí)現(xiàn)數(shù)據(jù)可視化案例分析,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下2022-08-08
Python實(shí)現(xiàn)打印螺旋矩陣功能的方法
這篇文章主要介紹了Python實(shí)現(xiàn)打印螺旋矩陣功能的方法,簡(jiǎn)單描述了螺旋矩陣的概念、原理及Python實(shí)現(xiàn)方法,需要的朋友可以參考下2017-11-11
python中fastapi設(shè)置查詢參數(shù)可選或必選
這篇文章主要介紹了python中fastapi設(shè)置查詢參數(shù)可選或必選,文圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值需要的小伙伴可以參考一下2022-06-06

