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 相关文章推荐
python cookielib 登录人人网的实现代码
Dec 19 Python
Python使用scrapy采集数据过程中放回下载过大页面的方法
Apr 08 Python
Python中输出ASCII大文字、艺术字、字符字小技巧
Apr 28 Python
深入理解Python中各种方法的运作原理
Jun 15 Python
浅谈Python爬取网页的编码处理
Nov 04 Python
python实现爬取百度图片的方法示例
Jul 06 Python
简单了解python PEP的一些知识
Jul 13 Python
详解pandas使用drop_duplicates去除DataFrame重复项参数
Aug 01 Python
python随机生成大小写字母数字混合密码(仅20行代码)
Feb 01 Python
python GUI库图形界面开发之PyQt5结合Qt Designer创建信号与槽的详细方法与实例
Mar 08 Python
解决pip install psycopg2出错问题
Jul 09 Python
OpenCV+python实现膨胀和腐蚀的示例
Dec 21 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 empty(),isset(),is_null()的实例测试详解
2013/06/06 PHP
php实现按文件名搜索文件的远程文件查找器
2014/05/10 PHP
CodeIgniter输出中文乱码的两种解决办法
2014/06/12 PHP
php时间戳格式化显示友好的时间函数分享
2014/10/21 PHP
深入学习微信网址链接解封的防封原理visit_type
2019/08/15 PHP
关于laravel后台模板laravel-admin select框的使用详解
2019/10/03 PHP
jquery动态加载select下拉框示例代码
2013/12/10 Javascript
javascript获取元素偏移量的方法有哪些
2014/06/24 Javascript
jQuery背景插件backstretch使用指南
2015/04/21 Javascript
用JavaScript实现页面重定向功能的教程
2015/06/04 Javascript
zepto与jquery的区别及zepto的不同使用8条小结
2016/07/28 Javascript
jQuery 选择器(61种)整理总结
2016/09/26 Javascript
根据输入邮箱号跳转到相应登录地址的解决方法
2016/12/13 Javascript
详解Node.js中exports和module.exports的区别
2017/04/19 Javascript
使用vue-cli webpack 快速搭建项目的代码
2018/11/21 Javascript
微信小程序实现侧边分类栏
2019/10/21 Javascript
微信小程序换肤功能实现代码(思路详解)
2020/08/25 Javascript
关于vue-cli3打包代码后白屏的解决方案
2020/09/02 Javascript
js 数据类型判断的方法
2020/12/03 Javascript
python多线程编程方式分析示例详解
2013/12/06 Python
python使用分治法实现求解最大值的方法
2015/05/12 Python
Python2随机数列生成器简单实例
2017/09/04 Python
python中requests使用代理proxies方法介绍
2017/10/25 Python
Python自然语言处理之词干,词形与最大匹配算法代码详解
2017/11/16 Python
啥是佩奇?使用Python自动绘画小猪佩奇的代码实例
2019/02/20 Python
python的re模块使用方法详解
2019/07/26 Python
Python计算两个矩形重合面积代码实例
2019/09/16 Python
opencv+python实现鼠标点击图像,输出该点的RGB和HSV值
2020/06/02 Python
python爬虫用mongodb的理由
2020/07/28 Python
7 For All Mankind官网:美国加州洛杉矶的高级牛仔服装品牌
2018/12/20 全球购物
枚举和一组预处理的#define有什么不同
2016/09/21 面试题
优秀家长自荐材料
2014/08/26 职场文书
2015年语文教学工作总结
2015/05/25 职场文书
2016消防宣传标语口号
2015/12/26 职场文书
劳务派遣管理制度(样本)
2019/08/23 职场文书
Python编程编写完善的命令行工具
2021/09/15 Python