python 用正则表达式筛选文本信息的实例


Posted in Python onJune 05, 2018

本文主要介绍如何对多个文本进行读取,并采用正则表达式对其中的信息进行筛选,将筛选出来的信息存写到一个新文本。

文本基础操作

打开文件: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 re
import os

#zhengze函数对读取到的数据进行筛选,并将筛选好的数据存入数组new_lines
new_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_path
path=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

#对每个文本调用正则函数进行筛选,筛选过后的数据存入数组final
for adress in file_path:
 file_object=open(adress)
 lines = file_object.readlines( )  #将文本中的内容以数组的形式(每行为一个元素)赋给lines
 file_object.close()
 final=zhengze(lines)
print final

#将筛选出来的数据写入新文本re_new.txt
file_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 用正则表达式筛选文本信息的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python算法学习之计数排序实例
Dec 18 Python
Python遍历pandas数据方法总结
Feb 09 Python
使用python获取csv文本的某行或某列数据的实例
Apr 03 Python
python3+PyQt5使用数据库窗口视图
Apr 24 Python
纯用NumPy实现神经网络的示例代码
Oct 24 Python
Python爬取视频(其实是一篇福利)过程解析
Aug 01 Python
Python如何应用cx_Oracle获取oracle中的clob字段问题
Aug 27 Python
Opencv求取连通区域重心实例
Jun 04 Python
Android Q之气泡弹窗的实现示例
Jun 23 Python
利用python3筛选excel中特定的行(行值满足某个条件/行值属于某个集合)
Sep 04 Python
Linux系统下升级pip的完整步骤
Jan 31 Python
Python答题卡识别并给出分数的实现代码
Jun 22 Python
python和shell获取文本内容的方法
Jun 05 #Python
python 查找文件名包含指定字符串的方法
Jun 05 #Python
Python使用爬虫爬取静态网页图片的方法详解
Jun 05 #Python
Python实现的读写json文件功能示例
Jun 05 #Python
python计算日期之间的放假日期
Jun 05 #Python
python检索特定内容的文本文件实例
Jun 05 #Python
python中利用h5py模块读取h5文件中的主键方法
Jun 05 #Python
You might like
PHP开发中常用的8个小技巧
2008/08/27 PHP
使用 PHPMAILER 发送邮件实例应用
2012/11/07 PHP
PHP反向代理类代码
2014/08/15 PHP
2款PHP无限级分类实例代码
2015/11/11 PHP
PHP获取访问页面HTTP状态码的实现代码
2016/11/03 PHP
两个Javascript小tip资料
2010/11/23 Javascript
js 中{},[]中括号,大括号使用详解
2011/05/12 Javascript
Extjs 继承Ext.data.Store不起作用原因分析及解决
2013/04/15 Javascript
Javascript 鼠标移动上去小三角形滑块缓慢跟随效果
2013/04/26 Javascript
js螺旋动画效果的具体实例
2013/11/15 Javascript
JavaScript实现MIPS乘法模拟的方法
2015/04/17 Javascript
jQuery中 attr() 方法使用小结
2015/05/03 Javascript
jQuery中on绑定事件后引发的事件冒泡问题如何解决
2016/05/25 Javascript
bootstrap datetimepicker日期插件使用方法
2017/01/13 Javascript
微信小程序新增的拖动组件movable-view使用教程
2017/05/20 Javascript
Angular路由ui-router配置详解
2018/08/01 Javascript
VUE-Table上绑定Input通过render实现双向绑定数据的示例
2018/08/27 Javascript
jQuery扩展方法实现Form表单与Json互相转换的实例代码
2018/09/05 jQuery
详解Vue中的scoped及穿透方法
2019/04/18 Javascript
vue实现带复选框的树形菜单
2019/05/27 Javascript
[44:41]Fnatic vs Liquid 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
python3.6.3安装图文教程 TensorFlow安装配置方法
2020/06/24 Python
Python进阶之全面解读高级特性之切片
2019/02/19 Python
opencv转换颜色空间更改图片背景
2019/08/20 Python
在OpenCV里使用特征匹配和单映射变换的代码详解
2019/10/23 Python
HTML5中的新元素介绍
2008/10/17 HTML / CSS
Notino罗马尼亚网站:购买香水和化妆品
2019/07/20 全球购物
电气自动化个人求职信范文
2014/02/03 职场文书
留学生求职信
2014/06/03 职场文书
跑操口号
2014/06/12 职场文书
交通事故和解协议书
2014/09/25 职场文书
沈阳故宫导游词
2015/01/31 职场文书
预备党员自我评价范文
2015/03/04 职场文书
民事调解协议书
2016/03/21 职场文书
解析Java中的static关键字
2021/06/14 Java/Android
浅谈哪个Python库才最适合做数据可视化
2021/06/28 Python