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多进程编程技术实例分析
Sep 16 Python
详解Python的Django框架中inclusion_tag的使用
Jul 21 Python
python使用matplotlib绘制折线图教程
Feb 08 Python
python tensorflow基于cnn实现手写数字识别
Jan 01 Python
python查询mysql,返回json的实例
Mar 26 Python
python3+pyqt5+itchat微信定时发送消息的方法
Feb 20 Python
python机器人运动范围问题的解答
Apr 29 Python
python3.6根据m3u8下载mp4视频
Jun 17 Python
python GUI库图形界面开发之PyQt5布局控件QGridLayout详细使用方法与实例
Mar 06 Python
python+selenium+chromedriver实现爬虫示例代码
Apr 10 Python
Python3开发环境搭建详细教程
Jun 18 Python
matplotlib绘制鼠标的十字光标的实现(内置方式)
Jan 06 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截断标题且兼容utf8和gb2312编码
2013/09/22 PHP
PHP SPL标准库之文件操作(SplFileInfo和SplFileObject)实例
2015/05/11 PHP
smarty高级特性之对象的使用方法
2015/12/25 PHP
PHP PDOStatement::bindValue讲解
2019/01/30 PHP
PHP pthreads v3在centos7平台下的安装与配置操作方法
2020/02/21 PHP
某页码显示的helper 少量调整,另附js版
2010/09/12 Javascript
js的一些常用方法小结
2011/06/29 Javascript
JQury slideToggle闪烁问题及解决办法
2011/07/05 Javascript
基于jQuery实现下拉收缩(展开与折叠)特效
2012/12/25 Javascript
一个不错的字符串转码解码函数(自写)
2014/07/31 Javascript
node.js中的url.resolve方法使用说明
2014/12/10 Javascript
jQuery在页面加载时动态修改图片尺寸的方法
2015/03/20 Javascript
JQuery使用$.ajax和checkbox实现下次不在通知功能
2015/04/16 Javascript
PHP和NodeJs开发的应用如何共用Session
2015/04/16 NodeJs
完美兼容多浏览器的js判断图片路径代码汇总
2015/04/17 Javascript
js窗口震动小程序分享
2016/11/28 Javascript
Bootstrap CSS布局之列表
2016/12/15 Javascript
详解Angular2 之 结构型指令
2017/06/21 Javascript
微信小程序实现购物页面左右联动
2019/02/15 Javascript
python实现简单的socket server实例
2015/04/29 Python
Python的Flask框架中使用Flask-Migrate扩展迁移数据库的教程
2016/06/14 Python
Python使用Flask-SQLAlchemy连接数据库操作示例
2018/08/31 Python
Flask核心机制之上下文源码剖析
2018/12/25 Python
Python常用特殊方法实例总结
2019/03/22 Python
PyTorch: 梯度下降及反向传播的实例详解
2019/08/20 Python
Python实现计算长方形面积(带参数函数demo)
2020/01/18 Python
解决python3插入mysql时内容带有引号的问题
2020/03/02 Python
如何解决cmd运行python提示不是内部命令
2020/07/01 Python
python爬虫调度器用法及实例代码
2020/11/30 Python
Python Process创建进程的2种方法详解
2021/01/25 Python
使用HTML5 Geolocation实现一个距离追踪器
2018/04/09 HTML / CSS
文员个人的求职信范文
2013/09/26 职场文书
校园安全标语
2014/06/07 职场文书
党的群众路线教育实践活动整改落实情况自查报告
2014/10/28 职场文书
详解JS WebSocket断开原因和心跳机制
2021/05/07 Javascript
详解OpenCV获取高动态范围(HDR)成像
2022/04/29 Python