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 01 Python
JS设计模式之责任链模式实例详解
Feb 03 Python
tensorflow实现图像的裁剪和填充方法
Jul 27 Python
Scrapy框架爬取Boss直聘网Python职位信息的源码
Feb 22 Python
Pandas之Fillna填充缺失数据的方法
Jun 25 Python
详解python中的模块及包导入
Aug 30 Python
Python常用模块sys,os,time,random功能与用法实例分析
Jan 07 Python
Django 后台带有字典的列表数据与页面js交互实例
Apr 03 Python
详解KMP算法以及python如何实现
Sep 18 Python
pycharm2020.1.2永久破解激活教程,实测有效
Oct 29 Python
教你漂亮打印Pandas DataFrames和Series
May 29 Python
Python爬虫基础之初次使用scrapy爬虫实例
Jun 26 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 UTF-8、Unicode和BOM问题
2010/05/18 PHP
php中实现xml与mysql数据相互转换的方法
2014/12/25 PHP
php-app开发接口加密详解
2018/04/18 PHP
JQuery 绑定select标签的onchange事件,弹出选择的值,并实现跳转、传参
2011/01/06 Javascript
jquery()函数的三种语法介绍
2013/10/09 Javascript
如何获取select下拉框的值(option没有及有value属性)
2013/11/08 Javascript
jquery实现表格隔行换色效果
2015/11/19 Javascript
JavaScript实现99乘法表及隔行变色实例代码
2016/02/24 Javascript
jQuery实现图片加载完成后改变图片大小的方法
2016/03/29 Javascript
jquery实现(textarea)placeholder自动换行
2016/12/22 Javascript
js实现带缓动动画的导航栏效果
2017/01/16 Javascript
详解JS: reduce方法实现 webpack多文件入口
2017/02/14 Javascript
详解node.js搭建代理服务器请求数据
2017/04/08 Javascript
AngularJS自定义指令详解(有分页插件代码)
2017/06/12 Javascript
vuejs 单文件组件.vue 文件的使用
2017/07/28 Javascript
基于Bootstrap实现城市三级联动
2017/11/23 Javascript
vue 使用vue-i18n做全局中英文切换的方法
2018/10/29 Javascript
JavaScript实现图片的放大缩小及拖拽功能示例
2019/05/14 Javascript
对node通过fs模块判断文件是否是文件夹的实例讲解
2019/06/10 Javascript
JavaScript ECMA-262-3 深入解析(一):执行上下文实例分析
2020/04/25 Javascript
[01:37]TI4西雅图DOTA2前线报道 VG拿下首胜教练357给出获胜秘诀
2014/07/10 DOTA
python中的随机函数小结
2018/01/27 Python
Python输出各行命令详解
2018/02/01 Python
pycharm: 恢复(reset) 误删文件的方法
2018/10/22 Python
详解python列表生成式和列表生成式器区别
2019/03/27 Python
python自动循环定时开关机(非重启)测试
2019/08/26 Python
python 实现一个反向单位矩阵示例
2019/11/29 Python
香港万宁官方海外旗舰店:香港健与美连锁店
2018/09/27 全球购物
煤矿班组长的职责
2013/12/25 职场文书
办公室主任四风问题对照检查材料思想汇报
2014/09/28 职场文书
2015年学生管理工作总结
2015/05/26 职场文书
民间借贷纠纷起诉书
2015/08/03 职场文书
2016年学校招生广告语
2016/01/28 职场文书
合同补充协议书
2016/03/24 职场文书
2019中秋节祝福语大全,提前收藏啦
2019/09/10 职场文书
星际争霸:毕姥爷vs解冻01
2022/04/01 星际争霸