详解Python中正则匹配TAB及空格的小技巧


Posted in Python onJuly 26, 2019

在正则中,使用.*可以匹配所有字符,其中.代表除\n外的任意字符,*代表0-无穷个,比如说要分别匹配某个目录下的子目录:

>>> import re
>>> match = re.match(r"/(.*)/(.*)/(.*)/", "/usr/local/bin/")
>>> match.groups()
('usr', 'local', 'bin')
>>>

比如像上面,使用(.*)就能很好的匹配,但如果字符串中里面即有TAB键,又有空格,要匹配出来,如何匹配呢?比如说像"Hello          Python World!", Hello到Python之间,即有空格键,又有TAB键,而且可能有1到多个,这个直接用(.*)就连"Python "给匹配到了,从下面可以看到两个TAB,两个空格键,还有Python都匹配到了。

>>> import re
>>> match = re.match(r"Hello(.*)World!", "Hello      Python World!")
>>> match.group(1)
'\t\t Python '
>>>

要想匹配到TAB和空格的混合字符,可以使用下面的两个小技巧:

1). 使用\s来匹配

>>> import re
>>> match = re.match(r"Hello(\s*)(.*)World!", "Hello       Python World!"
)
>>> match.groups()
('\t\t ', 'Python ')
>>>

2). 使用[\t ]来匹配

>>> import re
>>> match = re.match(r"Hello([\t ]*)(.*)World!", "Hello      Python World!"
)
>>> match.groups()
('\t\t ', 'Python ')
>>>

上面的小技巧,都能完美匹配TAB和空格键.

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
浅谈Python中的数据类型
May 05 Python
python3实现暴力穷举博客园密码
Jun 19 Python
Python中join函数简单代码示例
Jan 09 Python
python如何去除字符串中不想要的字符
Jul 05 Python
Python 查找list中的某个元素的所有的下标方法
Jun 27 Python
利用pandas进行大文件计数处理的方法
Jul 25 Python
python实现两张图片拼接为一张图片并保存
Jul 16 Python
pandas通过字典生成dataframe的方法步骤
Jul 23 Python
Python将视频或者动态图gif逐帧保存为图片的方法
Sep 10 Python
PyQT5 emit 和 connect的用法详解
Dec 13 Python
pytorch:实现简单的GAN示例(MNIST数据集)
Jan 10 Python
用Python 爬取猫眼电影数据分析《无名之辈》
Jul 24 Python
基于Django ORM、一对一、一对多、多对多的全面讲解
Jul 26 #Python
Django Rest framework频率原理与限制
Jul 26 #Python
Django 使用easy_thumbnails压缩上传的图片方法
Jul 26 #Python
解决django服务器重启端口被占用的问题
Jul 26 #Python
深入解析神经网络从原理到实现
Jul 26 #Python
python单例模式的多种实现方法
Jul 26 #Python
django的ORM操作 增加和查询
Jul 26 #Python
You might like
随时给自己贴的图片加文字的php代码
2007/03/08 PHP
PHP--用万网的接口实现域名查询功能
2012/12/13 PHP
『PHP』PHP截断函数mb_substr()使用介绍
2013/04/22 PHP
ThinkPHP3.1新特性之Action参数绑定
2014/06/19 PHP
PHP简单字符串过滤方法示例
2016/09/04 PHP
thinkPHP实现多字段模糊匹配查询的方法
2016/12/01 PHP
简单实用的全选反选按钮例子
2013/10/18 Javascript
JS控件ASP.NET的treeview控件全选或者取消(示例代码)
2013/12/16 Javascript
基于js里调用函数时,函数名带括号和不带括号的区别
2016/07/28 Javascript
jquery实现网页定位导航
2016/08/23 Javascript
BootStrap table使用方法分析
2016/11/08 Javascript
在bootstrap中实现轮播图实例代码
2017/06/11 Javascript
React-Native做一个文本输入框组件的实现代码
2017/08/10 Javascript
对vue中methods互相调用的方法详解
2018/08/30 Javascript
小程序组件之仿微信通讯录的实现代码
2018/09/12 Javascript
Elementui表格组件+sortablejs实现行拖拽排序的示例代码
2019/08/28 Javascript
微信小程序wxml列表渲染原理解析
2019/11/27 Javascript
viewer.js一个强大的基于jQuery的图像查看插件(支持旋转、缩放)
2020/04/01 jQuery
基于windows下pip安装python模块时报错总结
2018/06/12 Python
详细分析Python垃圾回收机制
2020/07/01 Python
Django nginx配置实现过程详解
2020/09/10 Python
Python运算符+与+=的方法实例
2021/02/18 Python
遮罩层 + Iframe实现界面自动显示的示例代码
2020/04/26 HTML / CSS
Bjorn Borg官方网上商店:国际运动时尚品牌
2016/08/27 全球购物
阿迪达斯中国官网:Adidas中国
2020/12/14 全球购物
技校生自我鉴定范文
2013/09/26 职场文书
大学生活学习的自我评价
2013/12/03 职场文书
工地门卫岗位职责
2013/12/30 职场文书
信息技术教学反思
2014/02/12 职场文书
《伯牙绝弦》教学反思
2014/03/02 职场文书
联欢晚会主持词
2014/03/25 职场文书
党员干部形式主义个人整改措施
2014/09/17 职场文书
机关班子查摆问题及整改措施
2014/10/28 职场文书
感恩教育观后感
2015/06/17 职场文书
婚庆开业庆典主持词
2015/06/30 职场文书
使用vue判断当前环境是安卓还是IOS
2022/04/12 Vue.js