详解Python中正则匹配TAB及空格的小技巧
在正则中,使用.*可以匹配所有字符,其中.代表除\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使用正则表达式匹配字符串开头并打印的方法.分享给大家供大家参考,具体如下: import re s="name=z1hangshan username=fff url=www.baidu.com password=ddd256" s2="username=fff name=z1hangshan url=www.baidu.com password=ddd256" #p=re.compile(r'((?:\s)name=(\S)+)') p=
-
Python利用正则表达式匹配并截取指定子串及去重的方法
本文实例讲述了Python利用正则表达式匹配并截取指定子串及去重的方法.分享给大家供大家参考.具体如下: import re pattern=re.compile(r'\| (\d+) \| (\d+) \|') numset=set() all=''' | 29266795 | 533 | | 29370116 | 533 | | 29467495 | 533 | | 29500404 | 533 | | 29500622 | 533 | | 29515964 | 530 | | 295160
-
Python正则表达式匹配中文用法示例
本文实例讲述了Python正则表达式匹配中文用法.分享给大家供大家参考,具体如下: #!/usr/bin/python #-*- coding:cp936-*-#思路,将str转换成unicode,方可用正则表达式,前提是,要知道文件的编码,本例中是gbk import cPickle as mypickle import re import sys if (__name__=='__main__'): fid1=file('demo.txt','r');#demo.txt写入字符如:我们 p=
-
详解python里使用正则表达式的全匹配功能
详解python里使用正则表达式的全匹配功能 python中很多匹配,比如搜索任意位置的search()函数,搜索边界的match()函数,现在还需要学习一个全匹配函数,就是搜索的字符与内容全部匹配,它就是fullmatch()函数. 例子如下: #python 3.6 #蔡军生 #http://blog.csdn.net/caimouse/article/details/51749579 # import re text = 'This is some text -- with punctua
-
使用Python 正则匹配两个特定字符之间的字符方法
如下所示: # -*- coding: cp936 -*- import re string = "xxxxxxxxxxxxxxxxxxxxxxxx entry '某某内容' for aaaaaaaaaaaaaaaaaa" result = re.findall(".*entry(.*)for.*",string) for x in result: print x # '某某内容' 以上这篇使用Python 正则匹配两个特定字符之间的字符方法就是小编分享
-
Python正则表达式匹配ip地址实例
本文实例讲述了正则表达式匹配ip地址实例.代码结构非常简单易懂.分享给大家供大家参考. 主要实现代码如下: import re reip = re.compile(r'(?<![\.\d])(?:\d{1,3}\.){3}\d{1,3}(?![\.\d])') for ip in reip.findall(line): print "ip>>>", ip PS:关于正则,这里再为大家推荐2款非常方便的正则表达式工具供大家参考使用: JavaScript正则表达式
-
Python时间的精准正则匹配方法分析
本文实例讲述了Python时间的精准正则匹配方法.分享给大家供大家参考,具体如下: 要用正则表达式精准匹配时间,其实并不容易 方式一: >>> import re >>> t = '19:10:48' >>> m = re.match(r'(.*):(.*):(.*)', t) >>> m.groups() ('19', '10', '48') 方式二: >>> t = '19:10:48' >>>
-
python使用正则表达式替换匹配成功的组
正则表达式简介 正则表达式,又称正规表示式.正规表示法.正规表达式.规则表达式.常规表示法(英语:Regular Expression,在代码中常简写为regex.regexp或RE),计算机科学的一个概念.正则表达式使用单个字符串来描述.匹配一系列符合某个句法规则的字符串.在很多文本编辑器里,正则表达式通常被用来检索.替换那些符合某个模式的文本. 许多程序设计语言都支持利用正则表达式进行字符串操作.例如,在Perl中就内建了一个功能强大的正则表达式引擎.正则表达式这个概念最初是由Unix中的工
-
Python匹配中文的正则表达式
正则表达式并不是Python的一部分.正则表达式是用于处理字符串的强大工具,拥有自己独特的语法以及一个独立的处理引擎,效率上可能不如str自带的方法,但功能十分强大.得益于这一点,在提供了正则表达式的语言里,正则表达式的语法都是一样的,区别只在于不同的编程语言实现支持的语法数量不同:但不用担心,不被支持的语法通常是不常用的部分. Python正则表达式简介 正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配. Python 自1.5版本起增加了re 模块,它提供 P
-
python正则表达式中的括号匹配问题
问题: m = re.findall('[0-9]*4[0-9]*', '[4]') 可以匹配到4. m = re.findall('([0-9])*4([0-9])*', '[4]') 匹配不到4. 这是为什么呢?PS,这个是一个简化的说明,我要用的正则比这个复杂,所以要用到(),表示一个序列的匹配. 补充一点,我放在notepad++中用的时候,两种写法都能匹配出来,不知道为什么python中就不行了. 答案: python的正则中用()会进行匹配,所以返回结果是['',''],就是两个()
随机推荐
- 举例讲解AngularJS中的模块
- javascript通过navigator.userAgent识别各种浏览器
- 宝丽通实现连续播放实现代码
- Ubuntu“无法打开锁文件(Could not get lock)”问题解决方法
- 概述VUE2.0不可忽视的很多变化
- 关于使用runtimeStyle属性问题讨论文章
- 张孝祥JAVA全集 Ftp下载[100%能下载]
- MySQL中事务概念的简洁学习教程
- MySQL性能优化之max_connections配置参数浅析
- JS数组排序技巧汇总(冒泡、sort、快速、希尔等排序)
- php adodb操作mysql数据库
- jQuery实现带幻灯的tab滑动切换风格菜单代码
- android编程实现sd卡读取数据库的方法
- Android UI设计系列之自定义ListView仿QQ空间阻尼下拉刷新和渐变菜单栏效果(8)
- Js(JavaScript)中,弹出是或否的选择框示例(confirm用法的实例分析)
- spring boot日志管理配置
- React Native 截屏组件的示例代码
- 利用ECharts.js画K线图的方法示例
- vue监听键盘事件的快捷方法【推荐】
- C语言学生成绩管理系统源代码