国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python基于正則表達(dá)式實(shí)現(xiàn)檢查文件內(nèi)容的方法【文件檢索】

2020-01-04 16:50:17
字體:
供稿:網(wǎng)友

本文實(shí)例講述了Python基于正則表達(dá)式實(shí)現(xiàn)檢查文件內(nèi)容的方法分享給大家供大家參考,具體如下:

這個是之前就在學(xué)python,欣賞python的小巧但是功能強(qiáng)大,是連電池都自帶的語言。平時工作中用Java ,覺得python在日常生活中比java用處要大,首先語法沒那么復(fù)雜,特別是io的操作,java里要寫一大坨沒關(guān)的代碼。還有就是不用編譯,而且linux系統(tǒng)默認(rèn)都會自帶。

這次遇到的問題是工作當(dāng)中想要遷移一個系統(tǒng)中的一個模塊,這個時候需要評估模塊里的代碼有沒有對其他代碼強(qiáng)依賴,就是有沒有import 其他模塊的代碼。如果通過人肉來坐,少量的文件還好,如果有大量的文件實(shí)在是很悲劇。這個時候就想起可以用pytho來檢索文件,通過正則表達(dá)式分析文件內(nèi)容,把有問題的文件名打印出來就可以了。

import osimport os.pathimport repackDir='/**/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:',filenamedef search():  os.path.walk(packDir,processDirectory,None)if __name__ == '__main__':  search()

因?yàn)橄M吹綉?yīng)用其他模塊的代碼,所以排除掉自己的模塊名auction和公共的應(yīng)用domain,utils 。對剩下的符合條件的打印出import這句和文件名sikuli

 

希望本文所述對大家Python程序設(shè)計(jì)有所幫助。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 垫江县| 孙吴县| 建昌县| 屯留县| 和龙市| 民权县| 滨海县| 汽车| 平泉县| 潢川县| 化德县| 伊金霍洛旗| 舞钢市| 师宗县| 陵川县| 贺兰县| 梁河县| 凤冈县| 咸宁市| 邳州市| 库伦旗| 南投县| 沙坪坝区| 潍坊市| 全椒县| 鄂伦春自治旗| 娄烦县| 平阴县| 安多县| 兴化市| 商水县| 方城县| 收藏| 兴安盟| 崇文区| 哈巴河县| 察哈| 九龙坡区| 和林格尔县| 康定县| 黑山县|