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 相关文章推荐
使用python3.5仿微软记事本notepad
Jun 15 Python
Python3计算三角形的面积代码
Dec 18 Python
Python使用matplotlib简单绘图示例
Feb 01 Python
Python数据类型之Dict字典实例详解
May 07 Python
python二维码操作:对QRCode和MyQR入门详解
Jun 24 Python
python 默认参数相关知识详解
Sep 18 Python
python编写微信公众号首图思路详解
Dec 13 Python
Python实现一个简单的毕业生信息管理系统的示例代码
Jun 08 Python
Python 如何在字符串中插入变量
Aug 01 Python
Python 远程开关机的方法
Nov 18 Python
Python hashlib和hmac模块使用方法解析
Dec 08 Python
python flask框架快速入门
May 14 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 导出数据到淘宝助手CSV的方法分享
2010/02/27 PHP
php自定义session示例分享
2014/04/22 PHP
PHP-Java-Bridge使用笔记
2014/09/22 PHP
ThinkPHP中自定义错误页面和提示页面实例
2014/11/22 PHP
PHP模板引擎Smarty内置变量调解器用法详解
2016/04/11 PHP
php设计模式之备忘模式分析【星际争霸游戏案例】
2020/03/24 PHP
javascript获得CheckBoxList选中的数量
2009/10/27 Javascript
JS获取文本框,下拉框,单选框的值的简单实例
2014/02/26 Javascript
Node.js中使用Buffer编码、解码二进制数据详解
2014/08/16 Javascript
通过jquery 获取URL参数并进行转码
2014/08/18 Javascript
JavaScript中的单引号和双引号报错的解决方法
2014/09/01 Javascript
jQuery封装的tab选项卡插件分享
2015/06/16 Javascript
JS获取IMG图片高宽的简单实例
2016/05/17 Javascript
js将json格式的对象拼接成复杂的url参数方法
2016/05/25 Javascript
微信小程序上滑加载下拉刷新(onscrollLower)分批加载数据(一)
2017/05/11 Javascript
JS获取一个表单字段中多条数据并转化为json格式
2017/10/17 Javascript
angularjs实现table增加tr的方法
2018/02/27 Javascript
Vue项目报错:Uncaught SyntaxError: Unexpected token
2018/11/10 Javascript
微信小程序实现上拉加载功能
2019/11/20 Javascript
js实现网页版贪吃蛇游戏
2020/02/22 Javascript
使用Python脚本来控制Windows Azure的简单教程
2015/04/16 Python
django的ORM模型的实现原理
2019/03/04 Python
python按修改时间顺序排列文件的实例代码
2019/07/25 Python
浅谈PyQt5中异步刷新UI和Python多线程总结
2019/12/13 Python
python matplotlib实现将图例放在图外
2020/04/17 Python
django 获取字段最大值,最新的记录操作
2020/08/09 Python
CSS代码检查工具stylelint的使用方法详解
2021/03/27 HTML / CSS
高校学生干部的自我评价分享
2013/11/04 职场文书
学前班教师的自我鉴定
2013/12/05 职场文书
教师先进工作者事迹材料
2014/05/01 职场文书
2014年班长个人工作总结
2014/11/14 职场文书
2015年教师新年寄语
2014/12/08 职场文书
鲁迅故里导游词
2015/02/05 职场文书
2015年药店工作总结
2015/04/20 职场文书
乡镇团代会开幕词
2016/03/04 职场文书
Win11任务栏太宽了怎么办?一招解决Win11任务栏太宽问题
2021/11/21 数码科技