python字符串切割:str.split()与re.split()的对比分析


Posted in Python onJuly 16, 2019

1、str.split不支持正则及多个切割符号,不感知空格的数量,比如用空格切割,会出现下面情况。

>>> s1="aa bb cc"
>>> s1.split(' ')
['aa', 'bb', '', 'cc']

因此split只适合简单的字符分割

2、re.split,支持正则及多个字符切割

>>> print line
abc aa;bb,cc | dd(xx).xxx 12.12'	xxxx
按空格切
>>> re.split(r' ',line)
['abc', 'aa;bb,cc', '|', 'dd(xx).xxx', "12.12'\txxxx"]
加将空格放可选框内[]内
>>> re.split(r'[ ]',line)
['abc', 'aa;bb,cc', '|', 'dd(xx).xxx', "12.12'\txxxx"]
按所有空白字符来切割:\s([\t\n\r\f\v])\S(任意非空白字符[^\t\n\r\f\v]
>>> re.split(r'[\s]',line)
['abc', 'aa;bb,cc', '|', 'dd(xx).xxx', "12.12'", 'xxxx']
多字符匹配
>>> re.split(r'[;,]',line)
['abc aa', 'bb', "cc | dd(xx).xxx 12.12'\txxxx"]
>>> re.split(r'[;,\s]',line)
['abc', 'aa', 'bb', 'cc', '|', 'dd(xx).xxx', "12.12'", 'xxxx']
使用括号捕获分组的适合,默认保留分割符
re.split('([;])',line)
['abc aa', ';', "bb,cc | dd(xx).xxx 12.12'\txxxx"]
去掉分隔符,加?:
>>> re.split(r'(?:;)',line)
['abc aa', "bb,cc | dd(xx).xxx 12.12'\txxxx"]

以上这篇python字符串切割:str.split()与re.split()的对比分析就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python装饰器使用方法实例
Nov 21 Python
python使用mailbox打印电子邮件的方法
Apr 30 Python
Python enumerate索引迭代代码解析
Jan 19 Python
python 读取.csv文件数据到数组(矩阵)的实例讲解
Jun 14 Python
python 按不同维度求和,最值,均值的实例
Jun 28 Python
解决python执行不输出系统命令弹框的问题
Jun 24 Python
python中比较两个列表的实例方法
Jul 04 Python
Django认证系统实现的web页面实现代码
Aug 12 Python
python进程间通信Queue工作过程详解
Nov 01 Python
Python自动化测试笔试面试题精选
Mar 12 Python
详解django使用include无法跳转的解决方法
Mar 19 Python
Python作用域与名字空间原理详解
Mar 21 Python
Python使用正则表达式分割字符串的实现方法
Jul 16 #Python
Python Django切换MySQL数据库实例详解
Jul 16 #Python
Python二维码生成识别实例详解
Jul 16 #Python
python3.6+selenium实现操作Frame中的页面元素
Jul 16 #Python
Python Web版语音合成实例详解
Jul 16 #Python
windows下python虚拟环境virtualenv安装和使用详解
Jul 16 #Python
Pandas中DataFrame的分组/分割/合并的实现
Jul 16 #Python
You might like
php学习 函数 课件
2008/06/15 PHP
php生成随机密码自定义函数代码(简单快速)
2014/05/10 PHP
php实现向javascript传递数组的方法
2015/07/27 PHP
了解jQuery技巧来提高你的代码
2010/01/08 Javascript
动态的改变IFrame的高度实现IFrame自动伸展适应高度
2012/12/28 Javascript
jQuery中DOM树操作之复制元素的方法
2015/01/23 Javascript
使用jQuery获得内容以及内容的属性
2015/02/26 Javascript
AngularJS入门教程之控制器详解
2016/07/27 Javascript
js实现打地鼠小游戏
2017/02/13 Javascript
AngularJS实现单一页面内设置跳转路由的方法
2017/06/28 Javascript
微信小程序点击控件修改样式实例详解
2017/07/07 Javascript
Angular限制input框输入金额(是小数的话只保留两位小数点)
2017/07/13 Javascript
JS基于开关思想实现的数组去重功能【案例】
2019/02/18 Javascript
JS实现的贪吃蛇游戏案例详解
2019/05/01 Javascript
vue实现点击按钮切换背景颜色的示例代码
2020/06/23 Javascript
[02:06]DOTA2英雄基础教程 暗影萨满
2013/12/16 DOTA
[46:09]2014 DOTA2华西杯精英邀请赛 5 25 LGD VS VG第三场
2014/05/26 DOTA
使用py2exe在Windows下将Python程序转为exe文件
2016/03/04 Python
python3新特性函数注释Function Annotations用法分析
2016/07/28 Python
python 打印出所有的对象/模块的属性(实例代码)
2016/09/11 Python
python opencv 读取本地视频文件 修改ffmpeg的方法
2019/01/26 Python
Python应用领域和就业形势分析总结
2019/05/14 Python
python随机数分布random均匀分布实例
2019/11/27 Python
浅谈pymysql查询语句中带有in时传递参数的问题
2020/06/05 Python
django 模型字段设置默认值代码
2020/07/15 Python
Python HTMLTestRunner如何下载生成报告
2020/09/04 Python
阿根廷票务网站:StubHub阿根廷
2018/04/13 全球购物
韩国演唱会订票网站:StubHub韩国
2019/01/17 全球购物
计算机系本科生求职信
2014/05/31 职场文书
施工安全标语
2014/06/07 职场文书
开展党的群众路线教育实践活动情况汇报
2014/11/05 职场文书
同意落户证明
2015/06/19 职场文书
教师远程研修感悟
2015/11/18 职场文书
2019消防宣传标语!
2019/07/10 职场文书
不会写演讲稿,快来看看这篇文章!
2019/08/06 职场文书
MySQL 外键约束和表关系相关总结
2021/06/20 MySQL