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之编写简单简单连接数据库并执行查询操作
Feb 27 Python
python编程实现12306的一个小爬虫实例
Dec 27 Python
python实现定时发送qq消息
Jan 18 Python
pyhanlp安装介绍和简单应用
Feb 22 Python
Python基础学习之类与实例基本用法与注意事项详解
Jun 17 Python
Python3 文章标题关键字提取的例子
Aug 26 Python
Python利用PyExecJS库执行JS函数的案例分析
Dec 18 Python
python将音频进行变速的操作方法
Apr 08 Python
Keras—embedding嵌入层的用法详解
Jun 10 Python
Python魔术方法专题
Jun 19 Python
tensorflow图像裁剪进行数据增强操作
Jun 30 Python
Python tkinter之Bind(绑定事件)的使用示例
Feb 05 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
ThinkPHP之A方法实例讲解
2014/06/20 PHP
PHP封装CURL扩展类实例
2015/07/28 PHP
PHP微信分享开发详解
2017/01/14 PHP
php-7.3.6 编译安装过程
2020/02/11 PHP
php使用Swoole实现毫秒级定时任务的方法
2020/09/04 PHP
提高代码性能技巧谈—以创建千行表格为例
2006/07/01 Javascript
js Function类型
2011/12/04 Javascript
javascript面向对象之this关键词用法分析
2015/01/13 Javascript
angularJS 中$scope方法使用指南
2015/02/09 Javascript
js实现兼容IE和FF的上下层的移动
2015/05/04 Javascript
谈谈JavaScript中function多重理解
2015/08/28 Javascript
基于AngularJS实现页面滚动到底自动加载数据的功能
2015/10/16 Javascript
浅谈jQuery animate easing的具体使用方法(推荐)
2016/06/17 Javascript
javascript this详细介绍
2016/09/19 Javascript
微信小程序左右滑动切换页面详解及实例代码
2017/02/28 Javascript
js省市区级联查询(插件版&无插件版)
2017/03/21 Javascript
微信小程序项目总结之点赞 删除列表 分享功能
2018/06/25 Javascript
jQuery实现的简单手风琴效果示例
2018/08/29 jQuery
15分钟深入了解JS继承分类、原理与用法
2019/01/19 Javascript
微信小程序利用swiper+css实现购物车商品删除功能
2019/03/06 Javascript
解决vue组件中click事件失效的问题
2019/11/09 Javascript
通过实例解析JavaScript for in及for of区别
2020/06/15 Javascript
详解Python中的多线程编程
2015/04/09 Python
Python ldap实现登录实例代码
2016/09/30 Python
python 公共方法汇总解析
2019/09/16 Python
python基于exchange函数发送邮件过程详解
2020/11/06 Python
CSS Grid布局教程之网格单元格布局
2014/12/30 HTML / CSS
html5指南-1.html5全局属性(html5 global attributes)深入理解
2013/01/07 HTML / CSS
Canvas中设置width与height的问题浅析
2018/11/01 HTML / CSS
意大利巧克力店:Chocolate Shop
2019/07/24 全球购物
酒店人事专员岗位职责
2013/12/19 职场文书
优秀信贷员先进事迹
2014/01/31 职场文书
应届生面试求职信
2014/07/02 职场文书
公民代理授权委托书
2014/09/24 职场文书
单位提档介绍信
2015/10/22 职场文书
MySQL脏读,幻读和不可重复读
2022/05/11 MySQL