本文实例讲述了Python基于正则表达式实现检查文件内容的方法分享给大家供大家参考,具体如下:

这个是之前就在学python,欣赏python的小巧但是功能强大,是连电池都自带的语言。平时工作中用Java ,觉得python在日常生活中比java用处要大,首先语法没那么复杂,特别是io的操作,java里要写一大坨没关的代码。还有就是不用编译,而且linux系统默认都会自带。

这次遇到的问题是工作当中想要迁移一个系统中的一个模块,这个时候需要评估模块里的代码有没有对其他代码强依赖,就是有没有import 其他模块的代码。如果通过人肉来坐,少量的文件还好,如果有大量的文件实在是很悲剧。这个时候就想起可以用pytho来检索文件,通过正则表达式分析文件内容,把有问题的文件名打印出来就可以了。

import os

import os.path

import re

packDir='/**/src/main/java/com/hz/yk/auction'

p1=re.compile(r"yk\.((?!auction)\w)+\b")

p2=re.compile(r"yk\.((?!domain)\w)+\b")

p3=re.compile(r"yk\.((?!utils)\w)+\b")

def processDirectory(args,dirname,filenames):

# print 'Directory',dirname

for filename in filenames:

if os.path.splitext(filename)[1]=='.java':

# print 'file',filename

fileObj=open(dirname+ "/"+filename)

hasOther=False

for line in fileObj:

if p1.search(line) and p2.search(line) and p3.search(line):

hasOther=True

print line

if hasOther:

print 'file:',filename

def search():

os.path.walk(packDir,processDirectory,None)

if __name__ == '__main__':

search()

因为希望看到应用其他模块的代码,所以排除掉自己的模块名auction和公共的应用domain,utils 。对剩下的符合条件的打印出import这句和文件名sikuli

PS:这里再为大家提供2款非常方便的正则表达式工具供大家参考使用:

希望本文所述对大家Python程序设计有所帮助。

希望与广大网友互动??

点此进行留言吧!

python 法律检索_Python基于正则表达式实现检查文件内容的方法【文件检索】相关推荐

  1. python遍历文件内容_Python四种逐行读取文件内容的方法

    下面是四种Python逐行读取文件内容的方法, 并分析了各种方法的优缺点及应用场景,以下代码在python3中测试通过, python2中运行部分代码已注释,稍加修改即可. 方法一:readline函 ...

  2. python怎么读取pdf文件_Python解析并读取PDF文件内容的方法

    本文实例讲述了Python解析并读取PDF文件内容的方法.分享给大家供大家参考,具体如下: 一.问题描述 利用python,去读取pdf文本内容. 二.效果 三.运行环境 python2.7 四.需要 ...

  3. python加密库_python基于pyDes库实现des加密的方法

    本文实例讲述了python基于pyDes库实现des加密的方法.分享给大家供大家参考,具体如下: 下载及简介地址:https://twhiteman.netfirms.com/des.html 如需要 ...

  4. python 法律检索_Python爬虫进阶必备 | 某裁判文书检索网站加密分析与自动登录实现...

    抓包分析 先抓包分析一下登录的请求[图1-1] 图1-1 按照加密的参数,我们一个个分析. 首先是 _csrf ,这个参数比较简单,一般是用来防止跨域***的,感兴趣的朋友可以借助搜索引擎了解一下,不 ...

  5. python twisted框架_Python 基于Twisted框架的文件夹网络传输源码

    由于文件夹可能有多层目录,因此需要对其进行递归遍历. 本文采取了简单的协议定制,定义了五条命令,指令Head如下: Sync:标识开始同步文件夹 End:标识结束同步 File:标识传输的文件名(相对 ...

  6. 基于bs4库的HTML内容查找方法

    一.信息提取实例 提取HTML中所有的URL链接 思路:1)搜索到所有的<a>标签 2)解析<a>标签格式,提取href后的链接内容 >>> import r ...

  7. python 四种逐行读取文件内容的方法

    目录 方法一:readline函数 方法二:一次读取多行数据 方法三:直接for循环 方法四:使用fileinput模块 下面是四种Python逐行读取文件内容的方法, 并分析了各种方法的优缺点及应用 ...

  8. python 读取文件读出来是什么格式-深入学习python解析并读取PDF文件内容的方法...

    这篇文章主要学习了python解析并读取PDF文件内容的方法,包括对学习库的应用,python2.7和python3.6中python解析PDF文件内容库的更新,包括对pdfminer库的详细解释和应 ...

  9. python中读取文件内容-深入学习python解析并读取PDF文件内容的方法

    这篇文章主要学习了python解析并读取PDF文件内容的方法,包括对学习库的应用,python2.7和python3.6中python解析PDF文件内容库的更新,包括对pdfminer库的详细解释和应 ...

最新文章

  1. JAVA的输入输出基本操作样例
  2. python如何下载zip文件_使用python-mechaniz下载zip文件
  3. 用户控件如何控制ASPX页面的控件
  4. 你的手机上未安装应用程序”的解决方案
  5. 【SpringCloud】第五篇: 路由网关(zuul)
  6. [css] box-sizing的宽度包含了哪些?
  7. maven打包插件:maven-compiler-plugin、maven-dependency-plugin、maven-jar-plugin、maven-resources-plugin详解
  8. kibana客户端工具操作ElasticSearch(增删改查三)
  9. Spring高级之Spring事务详解(用法、传播行为、隔离级别、只读事务、事务条件)
  10. 【TGRS】Ship Detection in Large-Scale SAR Images Via Spatial Shuffle-Group Enhance Attention译读笔记
  11. UnityGI5:实时 GI 与光探代理体
  12. LabVIEW学习笔记1
  13. 佛系前端面试题记录--第七周
  14. 达梦数据库角色、用户管理
  15. linux课程设计tiny6410,tiny6410烧写linux
  16. 【课程作业】学术英语写作:文献阅读报告2
  17. Pytorch dataloader中的num_workers (选择最合适的num_workers值)
  18. @mentions for Users with ActionText; 使用Tribute.js库
  19. 二分图/二部图(bipartite graph)
  20. Java源码阅读(类图自动生成工具)

热门文章

  1. 在Windows下通过ssh挂载远程文件系统(网络驱动器)
  2. 大量微软正版电子书下载
  3. lisp6 暖通cad_CAD【给排水cad吧】_百度贴吧
  4. Spring02_Autowire(自动注入)
  5. 第四章 计算机软件安装与调试
  6. linux shell 设置ip,设置IP地址shell脚本
  7. N位水仙花数 Java
  8. Studio 3t 续命 studio3t.bat
  9. 视频智能安防监控系统EasyNVR推流到抖音直播间添加背景音乐程序闪退问题分析
  10. 40dB降噪深度媲美千元耳机,南卡A2降噪蓝牙耳机发布