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字符串处理函数简明总结
Apr 13 Python
Python获取指定字符前面的所有字符方法
May 02 Python
Pycharm 操作Django Model的简单运用方法
May 23 Python
深入浅析Python2.x和3.x版本的主要区别
Nov 30 Python
Python实现字典按key或者value进行排序操作示例【sorted】
May 03 Python
Pandas之ReIndex重新索引的实现
Jun 25 Python
python django model联合主键的例子
Aug 06 Python
Python Opencv提取图片中某种颜色组成的图形的方法
Sep 19 Python
Python异常原理及异常捕捉实现过程解析
Mar 25 Python
如何以Winsows Service方式运行JupyterLab
Aug 30 Python
scrapy实践之翻页爬取的实现
Jan 05 Python
Django 实现jwt认证的示例
Apr 30 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
解析在apache里面给php写虚拟目录的详细方法
2013/06/24 PHP
解析在PHP中使用mysqli扩展库对mysql的操作
2013/07/03 PHP
php将图片保存入mysql数据库失败的解决方法
2014/12/27 PHP
PHP4和PHP5版本下解析XML文档的操作方法实例分析
2017/05/20 PHP
js 禁止选择功能实现代码(兼容IE/Firefox)
2010/04/23 Javascript
精通Javascript系列之数据类型 字符串
2011/06/08 Javascript
深入浅析JavaScript中的Function类型
2016/07/09 Javascript
jQuery实现手机版页面翻页效果的简单实例
2016/10/05 Javascript
localStorage实现便签小程序
2016/11/28 Javascript
Javascript 两种刷新方法以及区别和适用范围
2017/01/17 Javascript
微信小程序 devtool隐藏的秘密
2017/01/21 Javascript
jquery在vue脚手架中的使用方式示例
2017/08/29 jQuery
AngularJS遍历获取数组元素的方法示例
2017/11/11 Javascript
Vue代码分割懒加载的实现方法
2017/11/23 Javascript
写给小白看的JavaScript异步
2017/11/29 Javascript
Vue-Access-Control 前端用户权限控制解决方案
2017/12/01 Javascript
vue踩坑记-在项目中安装依赖模块npm install报错
2019/04/02 Javascript
详解Vue 匿名、具名和作用域插槽的使用方法
2019/04/22 Javascript
javascript 设计模式之享元模式原理与应用详解
2020/04/08 Javascript
[51:20]完美世界DOTA2联赛PWL S2 Magma vs PXG 第一场 11.28
2020/12/01 DOTA
Python实现读取字符串按列分配后按行输出示例
2018/04/17 Python
django admin.py 外键,反向查询的实例
2019/07/26 Python
解决python 读取 log日志的编码问题
2019/12/24 Python
python 获取当前目录下的文件目录和文件名实例代码详解
2020/03/10 Python
xadmin使用formfield_for_dbfield函数过滤下拉表单实例
2020/04/07 Python
Python爬虫实现vip电影下载的示例代码
2020/04/20 Python
在keras中实现查看其训练loss值
2020/06/16 Python
15个应该掌握的Jupyter Notebook使用技巧(小结)
2020/09/23 Python
Pycharm制作搞怪弹窗的实现代码
2021/02/19 Python
CSS3中Transition动画属性用法详解
2016/07/04 HTML / CSS
canvas 橡皮筋式线条绘图应用方法
2019/02/13 HTML / CSS
大学新生军训个人的自我评价
2013/10/03 职场文书
学生的自我鉴定范文
2013/10/24 职场文书
青年文明号服务承诺
2014/03/31 职场文书
工作失职检讨书范文
2015/05/05 职场文书
起诉书范文
2015/05/20 职场文书