Python实现简单文本字符串处理的方法


Posted in Python onJanuary 22, 2018

本文实例讲述了Python实现简单文本字符串处理的方法。分享给大家供大家参考,具体如下:

对于一个文本字符串,可以使用Python的string.split()方法将其切割。下面看看实际运行效果。

mySent = 'This book is the best book on python!'
print mySent.split()

输出:

['This', 'book', 'is', 'the', 'best', 'book', 'on', 'python!']

可以看到,切分的效果不错,但是标点符号也被当成了词,可以使用正则表达式来处理,其中分隔符是除单词、数字外的任意字符串。

import re
reg = re.compile('\\W*')
mySent = 'This book is the best book on python!'
listof = reg.split(mySent)
print listof

输出为:

['This', 'book', 'is', 'the', 'best', 'book', 'on', 'python', '']

现在得到了一系列词组成的词表,但是里面的空字符串需要去掉。

可以计算每个字符串的长度,只返回大于0的字符串。

import re
reg = re.compile('\\W*')
mySent = 'This book is the best book on python!'
listof = reg.split(mySent)
new_list = [tok for tok in listof if len(tok)>0]
print new_list

输出为:

['This', 'book', 'is', 'the', 'best', 'book', 'on', 'python']

最后,发现句子中的第一个字母是大写的。我们需要同一形式,把大写转化为小写。Python内嵌的方法,可以将字符串全部转化为小写(.lower())或大写(.upper())

import re
reg = re.compile('\\W*')
mySent = 'This book is the best book on python!'
listof = reg.split(mySent)
new_list = [tok.lower() for tok in listof if len(tok)>0]
print new_list

输出为:

['this', 'book', 'is', 'the', 'best', 'book', 'on', 'python']

下面来看一封完整的电子邮件:

内容

Hi Peter,

With Jose out of town, do you want to
meet once in a while to keep things
going and do some interesting stuff?

Let me know
Eugene
import re
reg = re.compile('\\W*')
email = open('email.txt').read()
list = reg.split(email)
new_txt = [tok.lower() for tok in list if len(tok)>0]
print new_txt

输出:

['hi', 'peter', 'with', 'jose', 'out', 'of', 'town', 'do', 'you', 'want', 'to', 'meet', 'once', 'in', 'a', 'while', 'to', 'keep', 'things', 'going', 'and', 'do', 'some', 'interesting', 'stuff', 'let', 'me', 'know', 'eugene']

更多关于Python相关内容可查看本站专题:《Python字符串操作技巧汇总》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
django批量导入xml数据
Oct 16 Python
python安装教程 Pycharm安装详细教程
May 02 Python
对Python进行数据分析_关于Package的安装问题
May 22 Python
Python实现嵌套列表去重方法示例
Dec 28 Python
Python 解决中文写入Excel时抛异常的问题
May 03 Python
Jupyter中直接显示Matplotlib的图形方法
May 24 Python
Django项目中用JS实现加载子页面并传值的方法
May 28 Python
python cs架构实现简单文件传输
Mar 20 Python
Python lambda表达式用法实例分析
Dec 25 Python
Python实现通过解析域名获取ip地址的方法分析
May 17 Python
基于python3 pyQt5 QtDesignner实现窗口化猜数字游戏功能
Jul 15 Python
如何理解python接口自动化之logging日志模块
Jun 15 Python
Python简单实现控制电脑的方法
Jan 22 #Python
Zookeeper接口kazoo实例解析
Jan 22 #Python
Python调用C语言的方法【基于ctypes模块】
Jan 22 #Python
python的Crypto模块实现AES加密实例代码
Jan 22 #Python
python实现求最长回文子串长度
Jan 22 #Python
Python获取本机所有网卡ip,掩码和广播地址实例代码
Jan 22 #Python
Linux CentOS7下安装python3 的方法
Jan 21 #Python
You might like
PHP获取当前页面URL函数实例
2014/10/22 PHP
php利用ffmpeg提取视频中音频与视频画面的方法详解
2017/06/07 PHP
JavaScript 继承详解 第一篇
2009/08/30 Javascript
JavaScript中的prototype使用说明
2010/04/13 Javascript
jquery实现树形二级菜单实例代码
2013/11/20 Javascript
判断客户浏览器是否支持cookie的示例代码
2013/12/23 Javascript
jQuery弹出层插件Lightbox_me使用指南
2015/04/21 Javascript
全面解析Bootstrap表单使用方法(表单控件状态)
2015/11/24 Javascript
jquery遍历函数siblings()用法实例
2015/12/24 Javascript
AngularJS基础 ng-model 指令详解及示例代码
2016/08/02 Javascript
JS获取及验证开始结束日期的方法
2016/08/20 Javascript
Jquery删除css属性的简单方法
2016/12/04 Javascript
canvas实现图像放大镜
2017/02/06 Javascript
vue父子组件的数据传递示例
2017/03/07 Javascript
基于jquery实现二级联动效果
2017/03/30 jQuery
Angular实现的敏感文字自动过滤与提示功能示例
2017/12/29 Javascript
angularJS开发注意事项
2018/05/26 Javascript
详解超简单的react服务器渲染(ssr)入坑指南
2019/02/28 Javascript
vuex的使用和简易实现
2021/01/07 Vue.js
[05:49]2014DOTA2TI4正赛第二日综述 昔日冠军纷纷落马 VG LGD占尽先机
2014/07/20 DOTA
Python中xml和json格式相互转换操作示例
2018/12/05 Python
GitHub 热门:Python 算法大全,Star 超过 2 万
2019/04/29 Python
python3中类的继承以及self和super的区别详解
2019/06/26 Python
django如何自己创建一个中间件
2019/07/24 Python
Python Sphinx使用实例及问题解决
2020/01/17 Python
在PyCharm中实现添加快捷模块
2020/02/12 Python
Python多线程获取返回值代码实例
2020/02/17 Python
谈谈python垃圾回收机制
2020/09/27 Python
小学生新年寄语
2014/04/03 职场文书
应届生求职信
2014/05/31 职场文书
如何写早恋检讨书
2014/09/10 职场文书
律师授权委托书范本
2014/10/07 职场文书
冲出亚马逊观后感
2015/06/03 职场文书
单位政审意见范文
2015/06/04 职场文书
保险公司2016开门红口号集锦
2015/12/24 职场文书
python中取整数的几种方法
2021/11/07 Python