python正则表达式中的括号匹配问题


Posted in Python onDecember 14, 2014

问题:

m = re.findall('[0-9]*4[0-9]*', '[4]')
可以匹配到4.
m = re.findall('([0-9])*4([0-9])*', '[4]')
匹配不到4.
这是为什么呢?PS,这个是一个简化的说明,我要用的正则比这个复杂,所以要用到(),表示一个序列的匹配。
补充一点,我放在notepad++中用的时候,两种写法都能匹配出来,不知道为什么python中就不行了。

答案:

python的正则中用()会进行匹配,所以返回结果是['',''],就是两个()中的匹配。要想达到原来的匹配效果,就是把4匹配出来,有两种解决方法:

1.最外层加个大括号,变成:m = re.findall('(([0-9])*4([0-9])*)', '[4]'),返回结果的第一个元素就是匹配结果了。
2.去除()的匹配结果返回,在括号前面加入?:,变成m = re.findall('(?:\d)*4(?:\d)*', '[4]'),返回结果就是要匹配的结果了。

Python 相关文章推荐
使用Python导出Excel图表以及导出为图片的方法
Nov 07 Python
分享几道你可能遇到的python面试题
Jul 24 Python
Python之Scrapy爬虫框架安装及简单使用详解
Dec 22 Python
将tensorflow的ckpt模型存储为npy的实例
Jul 09 Python
Python爬虫框架scrapy实现downloader_middleware设置proxy代理功能示例
Aug 04 Python
pyhanlp安装介绍和简单应用
Feb 22 Python
浅谈python中get pass用法
Mar 19 Python
python 爬取学信网登录页面的例子
Aug 13 Python
django 做 migrate 时 表已存在的处理方法
Aug 31 Python
Python+PyQt5实现灭霸响指功能
May 25 Python
Keras中的多分类损失函数用法categorical_crossentropy
Jun 11 Python
Python Pytorch查询图像的特征从集合或数据库中查找图像
Apr 09 Python
python的类方法和静态方法
Dec 13 #Python
Python计算程序运行时间的方法
Dec 13 #Python
Python编程中的反模式实例分析
Dec 08 #Python
Python实现拼接多张图片的方法
Dec 01 #Python
python字符串替换的2种方法
Nov 30 #Python
Python中3种内建数据结构:列表、元组和字典
Nov 30 #Python
Python函数中定义参数的四种方式
Nov 30 #Python
You might like
PHP json_encode中文乱码问题的解决办法
2013/09/09 PHP
Joomla语言翻译类Jtext用法分析
2016/05/05 PHP
类似框架的js代码
2006/11/09 Javascript
一个用js实现的页内搜索代码
2007/05/23 Javascript
jquery实现弹出层遮罩效果的简单实例
2014/03/03 Javascript
JavaScript面向对象编程入门教程
2014/04/16 Javascript
JavaScript中的值是按值传递还是按引用传递问题探讨
2015/01/30 Javascript
jQuery如何防止这种冒泡事件发生
2015/02/27 Javascript
JavaScript中的replace()方法使用详解
2015/06/06 Javascript
使用AngularJS创建单页应用的编程指引
2015/06/19 Javascript
js带缩略图的图片轮播效果代码分享
2015/09/14 Javascript
js实现prototype扩展的方法(字符串,日期,数组扩展)
2016/01/14 Javascript
jquery对象和DOM对象的任意相互转换
2016/02/21 Javascript
Angularjs实现mvvm式的选项卡示例代码
2016/09/08 Javascript
easyUI combobox实现联动效果
2017/01/17 Javascript
javascript过滤数组重复元素的实现方法
2017/05/03 Javascript
js使用文档就绪函数动态改变页面内容示例【innerHTML、innerText】
2019/11/07 Javascript
解决vue-router路由拦截造成死循环问题
2020/08/05 Javascript
Vue-cli4 配置 element-ui 按需引入操作
2020/09/11 Javascript
[03:49]DOTA2 2015国际邀请赛中国区预选赛第二日现场百态
2015/05/27 DOTA
python连接sql server乱码的解决方法
2013/01/28 Python
python 实现dict转json并保存文件
2019/12/05 Python
浅谈tensorflow 中tf.concat()的使用
2020/02/07 Python
在ipython notebook中使用argparse方式
2020/04/20 Python
CSS3中使用RGBA设置透明度的示例
2015/08/04 HTML / CSS
详解CSS3中强大的filter(滤镜)属性
2017/06/29 HTML / CSS
三只松鼠官方旗舰店:全网坚果销售第1
2017/11/25 全球购物
夏威夷灵感服装及配饰:Reyn Spooner
2018/09/18 全球购物
Myprotein法国官网:欧洲第一运动营养品牌
2019/03/26 全球购物
退伍老兵事迹材料
2014/01/31 职场文书
普通大学毕业生自荐信范文
2014/02/23 职场文书
党建工作先进材料
2014/05/02 职场文书
作风大整顿心得体会
2014/09/10 职场文书
2014年人力资源工作总结
2014/11/19 职场文书
银行求职信范文怎么写
2015/03/20 职场文书
2015年秋季学校开学标语
2015/07/16 职场文书