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中执行shell命令的几个方法小结
Sep 18 Python
Windows下使Python2.x版本的解释器与3.x共存的方法
Oct 25 Python
Python中防止sql注入的方法详解
Feb 25 Python
python实现textrank关键词提取
Jun 22 Python
wxPython的安装与使用教程
Aug 31 Python
Python简单处理坐标排序问题示例
Jul 11 Python
Python 操作 ElasticSearch的完整代码
Aug 04 Python
django多种支付、并发订单处理实例代码
Dec 13 Python
python等差数列求和公式前 100 项的和实例
Feb 25 Python
Django中ORM找出内容不为空的数据实例
May 20 Python
QT5 Designer 打不开的问题及解决方法
Aug 20 Python
Django 用户认证Auth组件的使用
Nov 30 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
纯真IP数据库的应用 IP地址转化成十进制
2009/06/14 PHP
fleaphp crud操作之findByField函数的使用方法
2011/04/23 PHP
ThinkPHP之用户注册登录留言完整实例
2014/07/22 PHP
mac环境中使用brew安装php5.5.15
2014/08/18 PHP
PHP实现合并discuz用户
2015/08/05 PHP
PHP连接MYSQL数据库实例代码
2016/01/20 PHP
Laravel如何实现自动加载类
2019/10/14 PHP
jquery中获取元素的几种方式小结
2011/07/05 Javascript
js将当前时间格式转换成时间搓(自写)
2013/09/26 Javascript
在页面中js获取光标/鼠标的坐标及光标的像素坐标
2013/11/11 Javascript
jQuery控制的不同方向的滑动(向左、向右滑动等)
2014/07/18 Javascript
jquery向上向下取整适合分页查询
2014/09/06 Javascript
JavaScript版的TwoQueues缓存模型
2014/12/29 Javascript
浅谈JavaScript 覆盖原型以及更改原型
2016/08/31 Javascript
Vue 过滤器filters及基本用法
2017/12/26 Javascript
js中的 || 与 && 运算符详解
2018/05/24 Javascript
实例分析vue循环列表动态数据的处理方法
2018/09/28 Javascript
Vue结合后台导入导出Excel问题详解
2019/02/19 Javascript
jQuery实现提交表单时不提交隐藏div中input的方法
2019/10/08 jQuery
浅谈使用nodejs搭建web服务器的过程
2020/07/20 NodeJs
JS轮播图的实现方法
2020/08/24 Javascript
微信小程序学习之自定义滚动弹窗
2020/12/20 Javascript
vue使用vue-quill-editor富文本编辑器且将图片上传到服务器的功能
2021/01/13 Vue.js
Python常见数据结构详解
2014/07/24 Python
Python使用PyGreSQL操作PostgreSQL数据库教程
2014/07/30 Python
获取Django项目的全部url方法详解
2017/10/26 Python
多个python文件调用logging模块报错误
2020/02/12 Python
Python标准库json模块和pickle模块使用详解
2020/03/10 Python
详解Python模块化编程与装饰器
2021/01/16 Python
京东奢侈品:全球奢侈品牌
2018/03/17 全球购物
北美Newegg打造的全球尖货海购平台:tt海购
2018/09/28 全球购物
俄罗斯玩具、儿童用品、儿童服装和鞋子网上商店:MyToys.ru
2019/10/14 全球购物
Herschel美国官网:背包、手提袋及配件
2020/03/10 全球购物
写给同学的新学期寄语
2015/02/27 职场文书
酒店财务经理岗位职责
2015/04/08 职场文书
解除合同协议书范本
2016/03/21 职场文书