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学习笔记之常用函数及说明
May 23 Python
python实现文件路径和url相互转换的方法
Jul 06 Python
Scrapy抓取京东商品、豆瓣电影及代码分享
Nov 23 Python
Python爬虫获取整个站点中的所有外部链接代码示例
Dec 26 Python
运动检测ViBe算法python实现代码
Jan 09 Python
Python基于更相减损术实现求解最大公约数的方法
Apr 04 Python
PyCharm代码整体缩进,反向缩进的方法
Jun 25 Python
python 中文件输入输出及os模块对文件系统的操作方法
Aug 27 Python
Python 微信之获取好友昵称并制作wordcloud的实例
Feb 21 Python
Python3开发实例之非关系型图数据库Neo4j安装方法及Python3连接操作Neo4j方法实例
Mar 18 Python
python如何处理程序无法打开
Jun 16 Python
Python基础之数据结构详解
Apr 28 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文本操作类
2006/11/25 PHP
php设计模式 Prototype (原型模式)代码
2011/06/26 PHP
yii权限控制的方法(三种方法)
2015/12/28 PHP
PHP后台实现微信小程序登录
2018/08/03 PHP
在laravel-admin中列表中禁止某行编辑、删除的方法
2019/10/03 PHP
jquery 关键字“拖曳搜索”之“拖曳”以及 图片“提示自适应放大”效果 的实现
2010/04/18 Javascript
统计出现最多的字符次数的js代码
2010/12/03 Javascript
[JSF]使用DataModel处理表行事件的实例代码
2013/08/05 Javascript
js对table的td进行相同内容合并示例详解
2013/12/27 Javascript
JavaScript中对象介绍
2014/12/31 Javascript
jquery图片轮播特效代码分享
2020/04/20 Javascript
jQuery实现鼠标经过购物车出现下拉框代码(推荐)
2016/07/21 Javascript
Node.js通过身份证号验证年龄、出生日期与性别方法示例
2017/03/09 Javascript
原生js实现简单的模态框示例
2017/09/08 Javascript
原生javascript实现文件异步上传的实例讲解
2017/10/26 Javascript
Vue2.0学习之详解Vue 组件及父子组件通信
2017/12/12 Javascript
python实现文件分组复制到不同目录的例子
2014/06/04 Python
Python获取linux主机ip的简单实现方法
2016/04/18 Python
python遍历序列enumerate函数浅析
2017/10/17 Python
Flask和Django框架中自定义模型类的表名、父类相关问题分析
2018/07/19 Python
在Python dataframe中出生日期转化为年龄的实现方法
2018/10/20 Python
Python实现查找数组中任意第k大的数字算法示例
2019/01/23 Python
PyCharm2018 安装及破解方法实现步骤
2019/09/09 Python
python实现两个字典合并,两个list合并
2019/12/02 Python
python 经典数字滤波实例
2019/12/16 Python
如何利用pycharm进行代码更新比较
2020/11/04 Python
纯CSS3打造动感漂亮时尚的扇形菜单
2014/03/18 HTML / CSS
深入解析HTML5使用SVG图像时的viewBox属性用法
2015/09/02 HTML / CSS
数据库笔试题
2013/05/09 面试题
给领导的致歉信范文
2014/01/13 职场文书
工作违纪检讨书
2014/02/17 职场文书
婚纱摄影师求职信
2014/03/07 职场文书
电子商务求职信
2014/06/15 职场文书
世界十大儿童漫画书排名,法国国宝漫画排第五,第二是轰动日本连环
2022/03/18 欧美动漫
python运行脚本文件的三种方法实例
2022/06/25 Python
Flink 侧流输出源码示例解析
2022/09/23 Servers