python里使用正则表达式的组嵌套实例详解


Posted in Python onOctober 24, 2017

python里使用正则表达式的组嵌套实例详解

由于组本身是一个完整的正则表达式,所以可以将组嵌套在其他组中,以构建更复杂的表达式。下面的例子,就是进行组嵌套的例子:

#python 3.6 
#蔡军生  
#http://blog.csdn.net/caimouse/article/details/51749579 
# 
import re 
 
 
def test_patterns(text, patterns): 
  """Given source text and a list of patterns, look for 
  matches for each pattern within the text and print 
  them to stdout. 
  """ 
  # Look for each pattern in the text and print the results 
  for pattern, desc in patterns: 
    print('{!r} ({})\n'.format(pattern, desc)) 
    print(' {!r}'.format(text)) 
    for match in re.finditer(pattern, text): 
      s = match.start() 
      e = match.end() 
      prefix = ' ' * (s) 
      print( 
        ' {}{!r}{} '.format(prefix, 
                   text[s:e], 
                   ' ' * (len(text) - e)), 
        end=' ', 
      ) 
      print(match.groups()) 
      if match.groupdict(): 
        print('{}{}'.format( 
          ' ' * (len(text) - s), 
          match.groupdict()), 
        ) 
    print() 
  return

例子:

#python 3.6 
#蔡军生  
#http://blog.csdn.net/caimouse/article/details/51749579 
# 
from re_test_patterns_groups import test_patterns 
 
test_patterns( 
  'abbaabbba', 
  [(r'a((a*)(b*))', 'a followed by 0-n a and 0-n b')], 
)

 

结果输出如下:

'a((a*)(b*))' (a followed by 0-n a and 0-n b)


 'abbaabbba'
 'abb'    ('bb', '', 'bb')
   'aabbb'  ('abbb', 'a', 'bbb')
     'a' ('', '', '')

 如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Python 相关文章推荐
python中的sort方法使用详解
Jul 25 Python
Python中的zip函数使用示例
Jan 29 Python
Python虚拟环境Virtualenv使用教程
May 18 Python
Python抓取框架 Scrapy的架构
Aug 12 Python
python实现用户管理系统
Jan 10 Python
Python使用Scrapy爬虫框架全站爬取图片并保存本地的实现代码
Mar 04 Python
详解python执行shell脚本创建用户及相关操作
Apr 11 Python
Python安装Flask环境及简单应用示例
May 03 Python
python错误调试及单元文档测试过程解析
Dec 19 Python
spyder 在控制台(console)执行python文件,debug python程序方式
Apr 20 Python
基于python判断字符串括号是否闭合{}[]()
Sep 21 Python
Pandas数据类型之category的用法
Jun 28 Python
Scrapy的简单使用教程
Oct 24 #Python
详解python里使用正则表达式的分组命名方式
Oct 24 #Python
在python中使用正则表达式查找可嵌套字符串组
Oct 24 #Python
python爬虫之BeautifulSoup 使用select方法详解
Oct 23 #Python
浅谈python中copy和deepcopy中的区别
Oct 23 #Python
python的构建工具setup.py的方法使用示例
Oct 23 #Python
python使用pyqt写带界面工具的示例代码
Oct 23 #Python
You might like
PHP学习笔记之三 数据库基本操作
2011/01/17 PHP
简单的php缓存类分享     php缓存机制
2014/01/22 PHP
Yii2使用小技巧之通过 Composer 添加 FontAwesome 字体资源
2014/06/22 PHP
浅析Yii2集成富文本编辑器redactor实例教程
2016/04/25 PHP
Alliance vs Liquid BO3 第一场2.13
2021/03/10 DOTA
网页禁用右键实现代码(JavaScript代码)
2009/10/29 Javascript
js实现带搜索功能的下拉框实时搜索实时匹配
2013/11/05 Javascript
js实现缓冲运动效果的方法
2015/04/10 Javascript
易被忽视的js事件问题总结
2016/05/14 Javascript
jQuery文本框得到与失去焦点动态改变样式效果
2016/09/08 Javascript
js实现的光标位置工具函数示例
2016/10/03 Javascript
详解async/await 异步应用的常用场景
2019/05/13 Javascript
微信小程序数据统计和错误统计的实现方法
2019/06/26 Javascript
vue 源码解析之虚拟Dom-render
2019/08/26 Javascript
基于javascript的无缝滚动动画实现2
2020/08/07 Javascript
关于element的表单组件整理笔记
2021/02/05 Javascript
简单文件操作python 修改文件指定行的方法
2013/05/15 Python
Python装饰器decorator用法实例
2014/11/10 Python
浅谈Python中chr、unichr、ord字符函数之间的对比
2016/06/16 Python
疯狂上涨的Python 开发者应从2.x还是3.x着手?
2017/11/16 Python
Python单向链表和双向链表原理与用法实例详解
2018/08/31 Python
Python 实现子类获取父类的类成员方法
2019/01/11 Python
python-序列解包(对可迭代元素的快速取值方法)
2019/08/24 Python
python基于Kivy写一个图形桌面时钟程序
2021/01/28 Python
css3实现的多级渐变下拉菜单导航效果代码
2015/08/31 HTML / CSS
将HTML5 Canvas的内容保存为图片借助toDataURL实现
2013/05/20 HTML / CSS
Vero Moda西班牙官方购物网站:丹麦BESTSELLER旗下知名女装品牌
2018/04/27 全球购物
Troy-Bilt官网:草坪割草机、吹雪机、分蘖机等
2019/02/19 全球购物
Java中有几种类型的流?JDK为每种类型的流提供了一些抽象类以供继承,请说出他们分别是哪些类?
2012/05/30 面试题
初婚未育未抱养证明
2014/01/12 职场文书
团组织关系介绍信
2014/01/12 职场文书
初一学生期末评语
2014/04/24 职场文书
五年级小学生评语
2014/12/26 职场文书
《窃读记》教学反思
2016/02/18 职场文书
年会邀请函的格式及范文五篇
2019/11/02 职场文书
MySQL学习之基础操作总结
2022/03/19 MySQL