python遍历目录,文件,正则获取文件以**开头的行

主要实现遍历某个目录下的所有文件,遍历文件每一行,用正则表达式获取以“–依赖源表”或“–目标表”所在行的内容和对应的文件名,用到了python的两个库,代码如下:

import os
import re

f = open('C:/Users/HZ/Desktop/out.txt', 'w', encoding='UTF-8')
for root,dirs,files in os.walk(r"C:/Users/HZ/Desktop/新建文件夹"):
    for file in files:
        src_catalog=os.path.join(root,file)
        print(src_catalog)
        file_object = open(src_catalog, 'r', encoding='UTF-8')

        try:
            for line in file_object:
                g = re.search("^--依赖源表.*\]*", line)
                if g:
                    print(g.group())
                    f.writelines(line)
                k = re.search("^--目标表", line)
                if k:
                    print(k.group())
                    f.writelines(line)

        finally:
            file_object.close()

这里存在一个小bug,当文件首行以‘–依赖源表’或者‘–目标表’开头时,代码读取不到,具体原因可能与utf-8编码格式有关,避免这种错误,可以优化一下正则的代码。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值