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 相关文章推荐
9种python web 程序的部署方式小结
Jun 30 Python
Python中使用items()方法返回字典元素对的教程
May 21 Python
python自动化脚本安装指定版本python环境详解
Sep 14 Python
Python中进程和线程的区别详解
Oct 29 Python
Python数据分析:手把手教你用Pandas生成可视化图表的教程
Dec 15 Python
django celery redis使用具体实践
Apr 08 Python
Django实现auth模块下的登录注册与注销功能
Oct 10 Python
使用pyinstaller逆向.pyc文件
Dec 20 Python
python单例设计模式实现解析
Jan 07 Python
pytorch常见的Tensor类型详解
Jan 15 Python
tensorflow:指定gpu 限制使用量百分比,设置最小使用量的实现
Feb 06 Python
使用TFRecord存取多个数据案例
Feb 17 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 MVC模式在网站架构中的实现分析
2010/03/04 PHP
Zend studio文件注释模板设置方法
2013/09/29 PHP
php时间计算相关问题小结
2016/05/09 PHP
PHP单例模式与工厂模式详解
2017/08/29 PHP
使用SyntaxHighlighter实现HTML高亮显示代码的方法
2010/02/04 Javascript
用C/C++来实现 Node.js 的模块(一)
2014/09/24 Javascript
浅谈JavaScript Date日期和时间对象
2014/12/29 Javascript
JS根据生日算年龄的方法
2015/05/05 Javascript
jquery+json实现动态商品内容展示的方法
2016/01/14 Javascript
深入解析jQuery中Deferred的deferred.promise()方法
2016/05/03 Javascript
javascript cookie基础应用之记录用户名的方法
2016/09/20 Javascript
Javascript 实现简单计算器实例代码
2016/10/23 Javascript
基于JavaScript实现拖动滑块效果
2017/02/16 Javascript
Angularjs分页查询的实现
2017/02/24 Javascript
微信小程序返回多级页面的实现方法
2017/10/27 Javascript
JavaScript实现删除数组重复元素的5种常用高效算法总结
2018/01/18 Javascript
JavaScript对象拷贝与赋值操作实例分析
2018/12/10 Javascript
pycharm 使用心得(七)一些实用功能介绍
2014/06/06 Python
Python文件及目录操作实例详解
2015/06/04 Python
python检查序列seq是否含有aset中项的方法
2015/06/30 Python
Django model序列化为json的方法示例
2018/10/16 Python
python创建文件时去掉非法字符的方法
2018/10/31 Python
使用PyQtGraph绘制精美的股票行情K线图的示例代码
2019/03/14 Python
Python中将两个或多个list合成一个list的方法小结
2019/05/12 Python
使用Python的turtle模块画国旗
2019/09/24 Python
wxPython实现分隔窗口
2019/11/19 Python
Python 中如何实现参数化测试的方法示例
2019/12/10 Python
Pycharm配置lua编译环境过程图解
2020/11/28 Python
jupyter 添加不同内核的操作
2021/02/06 Python
使用HTML5进行SVG矢量图形绘制的入门教程
2016/02/19 HTML / CSS
西班牙香水和化妆品网上商店:Douglas
2017/10/29 全球购物
食品行业求职人的自我评价
2014/01/19 职场文书
世界卫生日宣传活动总结
2015/02/09 职场文书
见习期个人总结
2015/03/05 职场文书
六一文艺汇演主持词
2015/06/30 职场文书
外出听课学习心得体会
2016/01/15 职场文书