python截取两个单词之间的内容方法

yipeiwu_com6年前Python基础

1. __init__ 初始化文件路径,关键字1,关键字2;

2. key_match 使用with open 方法,以二进制方式(也可以改成utf-8,GB2312)读取文件内容(支持txt/log格式);

3. buffer = f.read() 一致性读取到buffer中,读取超大文件会发生MemoryError(可以设置每次读取的size或切割文件)。

#!/usr/bin/python3
# -*- coding: utf-8 -*-
 
import re
 
#文本所在路径,引号前加r指按路径处理
#关键字word1,word2,换关键字,需修改引号间的内容
 
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("匹配到的行数:",self.lines)
   else:
    print("没有找到你输入的关键字")
 
path = input("请输入要分析的log地址:")
word1 = b"begin"
word2 = b"end"
matchWords = match2Words(path, word1, word2)
matchWords.key_match()

以上这篇python截取两个单词之间的内容方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python在TXT文件中按照某一字符串取出该字符串所在的行方法

主要流程:读取文件数据——将每一行数据分成不同的字符段——在判断 在某个字否段是否含与某个字符。(只是其中一种办法) 代码如下: with open(r"C:\Users\LENOV...

python+opencv实现摄像头调用的方法

python+opencv实现摄像头调用的方法

最近入了一块树莓派,想让其实现摄像头的调用,因此写下此博客备忘 一、树莓派网络的配置 首先,对树莓派进行网络配置,否则就无法进行软件的安装 我们知道,ifconfig命令可以修改ip地址...

Python的Django框架中模板碎片缓存简介

你同样可以使用cache标签来缓存模板片段。 在模板的顶端附近加入{% load cache %}以通知模板存取缓存标签。 模板标签{% cache %}在给定的时间内缓存了块的内容。...

Python插入Elasticsearch操作方法解析

这篇文章主要介绍了Python插入Elasticsearch操作方法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 在用scrap...

Python读写zip压缩文件的方法

Python 内置的 zipfile 模块可以对文件(夹)进行ZIP格式的压缩和读取操作。要进行相关操作,首先需要实例化一个 ZipFile 对象。ZipFile 接受一个字符串格式压缩...