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 相关文章推荐
pycharm 使用心得(七)一些实用功能介绍
Jun 06 Python
使用Python来开发Markdown脚本扩展的实例分享
Mar 04 Python
python django事务transaction源码分析详解
Mar 17 Python
Python的mysql数据库的更新如何实现
Jul 31 Python
python切片及sys.argv[]用法详解
May 25 Python
对Python 3.2 迭代器的next函数实例讲解
Oct 18 Python
Django中在xadmin中集成DjangoUeditor过程详解
Jul 24 Python
python爬虫之遍历单个域名
Nov 20 Python
判断Threading.start新线程是否执行完毕的实例
May 02 Python
Python unittest如何生成HTMLTestRunner模块
Sep 08 Python
详解pandas apply 并行处理的几种方法
Feb 24 Python
Python绘制分类图的方法
Apr 20 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
Zend Framework教程之Loader以及PluginLoader用法详解
2016/03/09 PHP
php+jquery+html实现点击不刷新加载更多的实例代码
2016/08/12 PHP
php实现图片以base64显示的方法
2016/10/13 PHP
PHP-FPM 的管理和配置详解
2019/02/17 PHP
phpcmsv9.0任意文件上传漏洞解析
2020/10/20 PHP
通过JS 获取Mouse Position(鼠标坐标)的代码
2009/09/21 Javascript
JS分割字符串并放入数组的函数
2011/07/04 Javascript
js 如何实现对数据库的增删改查
2012/11/23 Javascript
不要使用jQuery触发原生事件的方法
2014/03/03 Javascript
JavaScript中计算网页中某个元素的位置
2015/06/10 Javascript
JS实现三个层重叠点击互相切换的方法
2015/10/06 Javascript
总结JavaScript中布尔操作符||与&&的使用技巧
2015/11/17 Javascript
Jquery中request和request.form和request.querystring的区别
2015/11/26 Javascript
Javascript 创建类并动态添加属性及方法的简单实现
2016/10/20 Javascript
微信小程序 登陆流程详细介绍
2017/01/17 Javascript
js实现截图保存图片功能的代码示例
2017/02/16 Javascript
VUE开发一个图片轮播的组件示例代码
2017/03/06 Javascript
将input框中输入内容显示在相应的div中【三种方法可选】
2017/05/08 Javascript
基于vue+ bootstrap实现图片上传图片展示功能
2017/05/17 Javascript
vue 动态修改a标签的样式的方法
2018/01/18 Javascript
vue短信验证性能优化如何写入localstorage中
2018/04/25 Javascript
async/await优雅的错误处理方法总结
2019/01/30 Javascript
vue 动态生成拓扑图的示例
2021/01/03 Vue.js
python通过urllib2获取带有中文参数url内容的方法
2015/03/13 Python
Python本地与全局命名空间用法实例
2015/06/16 Python
Python 转义字符详细介绍
2017/03/21 Python
python绘制多个子图的实例
2019/07/07 Python
python用match()函数爬数据方法详解
2019/07/23 Python
Win10环境python3.7安装dlib模块趟过的坑
2019/08/01 Python
如何利用CSS3制作3D效果文字具体实现样式
2013/05/02 HTML / CSS
新加坡第一的杂货零售商:NTUC FairPrice
2020/12/05 全球购物
青年创业培训欢迎词
2014/01/10 职场文书
眼镜促销方案
2014/03/15 职场文书
教师考核评语大全
2014/12/31 职场文书
军事理论课感想
2015/08/11 职场文书
PostgreSQL怎么创建分区表详解
2022/06/25 PostgreSQL