python查找文件指定内容,python正则匹配文件内容,python 文件查找及内容匹配方法

python查找文件指定内容,python正则匹配文件内容,python 文件查找及内容匹配方法

今天边肖给大家分享一个python文件搜索和内容匹配的方法,有很好的参考价值。希望对你有帮助。来和边肖一起看看吧。

需求:程序开发中有大量的接口,但实际使用中有一部分是没有用的。在开发的程序中匹配这些接口名称,并找出哪些接口从未使用过。保存这些未使用的接口名称。

代码结构:

结构解析:

1.find.py是一个文件搜索和匹配程序。

2.input_files.txt是要匹配的内容。

文件格式如下:

3.result.txt用于存储搜索结果。

格式同上。

4.用于测试的text.txt文档(可忽略)

实际代码:

find.py

#!/usr/bin/python

# -*-编码:UTF-8 -*-

导入操作系统、re、日期时间

类查找(对象):

def __init__(self,root,input_file):

'''

-初始化

'''

Self.root=root #文件树的根

Self.input_files=[] #要查询的字符串集合

Self.files=[] #要匹配的文件集合

Self.current=0 #匹配的文件集合的位置

f=文件(输入文件,' r ')

old_content=f.read()

f.close()

self . input _ files=old _ content . split(' \ n ')#在数组中保存要匹配的字符串

@静态方法

def find_file(自身):

'''

-查找文件,即遍历文件树,将找到的文件放入文件集合中。

:返回:

'''

# python中的walk方法可以找到给定路径下的所有文件和文件夹,这里只使用文件。

对于os.walk中的根、目录、文件(self.root,topdown=True):

对于文件中的名称:

self . files . append(OS . path . join(root,name))

# print(os.path.join(root,name))

#对于目录中的名称:

# print(os.path.join(root,name))

@静态方法

定义行走(自己):

'''

-逐个搜索它们,并将结果存储在result.txt文件中。

:参数自身:

:返回:

'''

对于self.files中的项目1:

Find.traverse_file(self,item1)

尝试:

结果=' '

对于self.input_files中的第3项:

结果=项目3 '\n '

f=文件('。/result_files.txt ',' w ')

f.write(结果)

f.close()

IOError除外,消息:

打印'错误:',消息

否则:

打印“确定”

@静态方法

def traverse_file(自身,文件路径):

'''

-遍历文件并匹配字符串。

:返回:

'''

f=文件(文件路径,' r ')

file_content=f.read()

f.close()

输入文件=[]

对于self.input_files中的项目2:

如果项目2:

#常规匹配,不区分大小写

searchObj=re.search(r '(。*)“项目2”。*,文件内容,re。M | re。我)

if searchObj:

继续

否则:

输入文件.追加(项目2)

self.input_files=输入文件

if __name__=='__main__ ':

打印datetime.datetime.now()

findObj=Find('F:\\projects ','。/input _ files . txt’)

findObj.find_file

findObj.walk(findObj)

打印datetime.datetime.now()

以上python文件搜索和内容匹配方法是边肖分享的全部内容。希望给大家一个参考,支持我们。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: