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

首頁 > 編程 > Python > 正文

python 用正則表達式篩選文本信息的實例

2020-02-15 21:39:18
字體:
來源:轉載
供稿:網友

本文主要介紹如何對多個文本進行讀取,并采用正則表達式對其中的信息進行篩選,將篩選出來的信息存寫到一個新文本。

文本基礎操作

打開文件:open(‘文件名',‘打開方式')>>>file=open(r'C:/Users/yuanlei/Desktop/mytxt.txt','w+').為避免報錯,在文件名的引號前加個r.

文件打開方式:只讀——r或rt,rb為二進制文件;打開文件前清空文件內容——w或wt;在文末寫入——a+;

清空內容然后在文末寫入——w+;寫到文件任意位置——r+;

關閉文件:文件打開運行好后必須要關閉——文件名.close()>>>mytxt.close()

讀取文件中的內容:將每行內容,包括換行符,作為一個元素存入數組——lines=file_object.readlines(),但是這樣會把換行符也賦進去

去除換行符——new_lines=lines.splitlines()

os包:import os 獲取文件地址——os.listdir(父文件地址)

下面附上實現摘要中說的功能的完整代碼:

# coding: utf-8#讀取文本中的中英文數據并使用正則表達式將所需數據篩選入到一個新文本中import reimport os#zhengze函數對讀取到的數據進行篩選,并將篩選好的數據存入數組new_linesnew_lines=[]    #申明new_lines數組def zhengze(f): regex_str=".*?(l.*?e).*" for x in f:  new_x = x.splitlines()  #注意:splitlines是將傳入的字符串去除'/n'之后以數組的形式傳出,而不是字符串形式  match_obj=re.match(regex_str,new_x[0])  if match_obj:   new_lines.append(match_obj.group(1))  else:   new_lines.append('no') return new_lines#獲取指定文件夾下的所有文本的絕對地址,并存入數組file_pathpath=r'C:/Users/yuanlei/Desktop/new_file_txt'file_path=[]for filename in os.listdir(path):  #獲取path下所有文件的路徑 file_path.append((os.path.join(path,filename)))print file_path#對每個文本調用正則函數進行篩選,篩選過后的數據存入數組finalfor adress in file_path: file_object=open(adress) lines = file_object.readlines( )  #將文本中的內容以數組的形式(每行為一個元素)賦給lines file_object.close() final=zhengze(lines)print final#將篩選出來的數據寫入新文本re_new.txtfile_2=open(r'C:/Users/yuanlei/Desktop/re_new.txt','w+')for x in final: file_2.write(x) file_2.write('/n')file_2.close()

以上這篇python 用正則表達式篩選文本信息的實例就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林站長站。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 镇原县| 兴义市| 霍州市| 富源县| 资中县| 乡宁县| 普洱| 新乡市| 岑溪市| 宁南县| 凤庆县| 西吉县| 八宿县| 波密县| 商河县| 桐城市| 搜索| 宜兰县| 汉川市| 错那县| 宁河县| 平原县| 辽阳市| 岳阳县| 巴马| 砀山县| 桑日县| 武隆县| 德江县| 康马县| 灵宝市| 沁阳市| 昌乐县| 鞍山市| 隆化县| 锦屏县| 吕梁市| 高尔夫| 洛浦县| 凉山| 钦州市|