Python正则表达式

贪婪匹配/最小匹配

Re库默认采用贪婪匹配,即匹配最长的子字符串。在量词后面加一个"?",即可由贪婪匹配化为最小匹配。

‘*’用于将前面的模式匹配0次或多次(贪婪模式,即尽可能多的匹配)。

‘+’用于将前面的模式匹配1次或多次(贪婪模式)。

‘?’用于将前面的模式匹配0次或1次(贪婪模式)。

‘*?,+?,??’即上面三种特殊字符的非贪婪模式(尽可能少的匹配)。

‘{m,n}’用于将前面的模式匹配m次到n次(贪婪模式),即最小匹配m次,最大匹配n次。

‘{m,n}?’即上面‘{m,n}’的非贪婪版本。

代码示例如下:

import rematch = re.search(r'PY.*N', 'PYANBNCNDN') #默认贪婪匹配。match.group(0)Out[3]: 'PYANBNCNDN' match = re.search(r'PY.*?N', 'PYANBNCNDN') #加了"?"就是最小匹配。match.group(0)Out[5]: 'PYAN' 

Python正则表达式基础到此告一段落,剩下的就是多多练习了。

Over.

python正则匹配找到所有的浮点数_Python随笔17:Python正则表达式基础(4):贪婪匹配和最小匹配...相关推荐

  1. python正则匹配找到所有的浮点数_如何利用Python抓取静态网站及其内部资源

    遇到的需求 前段时间需要快速做个静态展示页面,要求是响应式和较美观.由于时间较短,自己动手写的话也有点麻烦,所以就打算上网找现成的. 中途找到了几个页面发现不错,然后就开始思考怎么把页面给下载下来. ...

  2. python实部和虚部都是浮点数_python实部和虚部都是浮点数_python——Numpy库

    Numpy库 Numpy库中的数组对象:N维数组类型:ndarray 1) ndarray的作用: a) 数组对象性可以去掉元素间运算所需的循环,使一维向量更像单个数据. b) 设置专门的数组对象,经 ...

  3. python正则怎么取反_第11.19节 Python 中正则表达式的扩展功能:前视断言和前视取反...

    一.引言 在<第11.16节 Python正则元字符"()"(小括号)与组(group)匹配模式>中老猿介绍了组匹配模式的命名组功能及引用组功能,这两者都是组模式的扩展 ...

  4. python编程教学基本语法教学视频_Python编程学习#Python视频课程#全民一起玩Python 基础+提高...

    适用人群 想用轻松系统的方式,从零开始真正理解掌握Python.进而学习办公.网抓.数据.AI.网站等技术的各界人士 课程概述 制作精细.自带吐槽,每节课程(20分钟)均耗时数十小时精心打造!有多达十 ...

  5. 在python中len表示的数据类型是_Python学习笔记——Python数据类型

    1.列表1.1取单个值 1.2切片获取子列表 1.3用len()函数获取列表长度 1.4列表的循环 1.5列表的链接和复制 1.6列表的增.删.查 1.7列表的排序--sort()方法 2.字符串2. ...

  6. python编程的基本方法有哪些_Python编程中常用的基础知识有哪些?

    今天小编要跟大家分享的文章是关于Python编程中常用的基础知识有哪些?正在从事Python相关工作的小伙伴们,来和小编一起看一看本篇文章,希望本篇文章能够对大家有所帮助. 1.正则表达式替换 目标: ...

  7. python从入门到精通学习笔记_Python从入门到精通之基础概念

    编码 默认情况下,Python 3 源码文件以 UTF-8 编码,所有字符串都是 unicode 字符串. 当然你也可以为源码文件指定不同的编码: # -*- coding: cp-1252 -*- ...

  8. python输出结果每5个换行_python for循环 - python基础入门(11)

    文章首发微信公众号,微信搜索:猿说python 在python开发中,除了前篇文章介绍的while循环还有一个for循环也经常使用,两者使用都是大同小异,for循环的使用相对于while循环更加灵活, ...

  9. python模拟浏览器下载文件在哪里_python下selenium模拟浏览器基础操作

    1.安装及下载 selenium安装: pip install selenium  即可自动安装selenium geckodriver下载:https://github.com/mozilla/ge ...

最新文章

  1. 计算机管理员身份有哪些优点,重装系统有什么好处?有哪些理由值得让电脑重装系统?...
  2. mysql try catch_C# try catch finally:异常处理
  3. Typescript在Vue项目中的使用
  4. DDD - 如何理解Entity与VO
  5. ModuleNotFoundError: No module named 'distutils.core'
  6. SAP Spartacus LayoutConfig的配置为何运行时不生效
  7. .NET 传奇 1.0 的出版过程,以及未来计划
  8. python paramiko长连接_【Python】 SSH连接的paramiko
  9. 给iOS项目中添加图片,并通过UIImageView引用和显示该UIImage图片
  10. 注意cache同时过期问题
  11. @程序员,2019 年软件开发新趋势必知!
  12. dd linux 格式化u盘启动盘_Ubuntu to go启动盘制作
  13. 计算机网络拓扑结构方案总结,计算机网络拓扑结构总结
  14. java开发工程师面试自我介绍_java程序员面试自我介绍范文
  15. ug冲模标准件库_UG NX插件
  16. SpringMVC:过滤器和拦截器的区别和实现原理
  17. 关于房价问题的看法。
  18. C++-对于一个频繁使用的短小函数,应该使用什么来实现?有什么优缺点?
  19. 如何生成二维码?生成二维码其实很简单
  20. 标称型数据和数值型数据

热门文章

  1. day13-递归函数、匿名函数、内置函数
  2. Gartner调查显示政府部门数字化转型尚处萌芽期
  3. EDA技术使用教程实验
  4. mybatis学习笔记四(动态sql)
  5. 【具体数学--读书笔记】1.1 The Power of Hanoi
  6. Scala的设计目标——Martin Odersky访谈(二)
  7. Apache Nutch 1.3 学习笔记目录
  8. 简要安装FreeBSD 6.2及配置桌面环境[zz]
  9. plsql数据库异常---plsql 登录后,提示数据库字符集(AL32UTF8)和客户端字符集(ZHS16GBK)不一致 .
  10. 当年要是早知道这4步框架,我就不会为数据管理发愁了