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的迭代器和生成器使用实例
Jan 14 Python
Python变量和数据类型详解
Feb 15 Python
Python实现树的先序、中序、后序排序算法示例
Jun 23 Python
python僵尸进程产生的原因
Jul 21 Python
Python实现的递归神经网络简单示例
Aug 11 Python
Python Unittest根据不同测试环境跳过用例的方法
Dec 16 Python
对Python中实现两个数的值交换的集中方法详解
Jan 11 Python
wxPython实现分隔窗口
Nov 19 Python
使用Python将Exception异常错误堆栈信息写入日志文件
Apr 08 Python
python 画图 图例自由定义方式
Apr 17 Python
python 实现音频叠加的示例
Oct 29 Python
python爬虫--selenium模块
Mar 31 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开发文件系统实例讲解
2006/10/09 PHP
php数组函数序列之array_unshift() 在数组开头插入一个或多个元素
2011/11/07 PHP
PHP Curl多线程原理实例详解
2013/11/06 PHP
php常用的安全过滤函数集锦
2014/10/09 PHP
PHP实现股票趋势图和柱形图
2015/02/07 PHP
用js来解决ajax读取页面乱码
2010/11/28 Javascript
javascript实现英文首字母大写
2015/04/23 Javascript
新手快速学习JavaScript免费教程资源汇总
2015/06/25 Javascript
jquery中表单 多选框的一种巧妙写法
2015/09/06 Javascript
JavaScript中误用/g导致的正则test()无法正确重复执行的解决方案
2016/07/27 Javascript
react.js 翻页插件实例代码
2017/01/19 Javascript
node.js 用socket实现聊天的示例代码
2017/10/17 Javascript
vue 组件中添加样式不生效的解决方法
2018/07/06 Javascript
javascript中如何判断类型汇总
2019/05/14 Javascript
Element-Ui组件 NavMenu 导航菜单的具体使用
2019/10/24 Javascript
vue实现评论列表功能
2019/10/25 Javascript
vue+swiper实现左右滑动的测试题功能
2020/10/30 Javascript
JavaScript实现商品评价五星好评
2020/11/30 Javascript
python 判断自定义对象类型
2009/03/21 Python
通过数据库向Django模型添加字段的示例
2015/07/21 Python
TensorFlow实现简单卷积神经网络
2018/05/24 Python
python3中使用__slots__限定实例属性操作分析
2020/02/14 Python
Python如何在DataFrame增加数值
2020/02/14 Python
了解一下python内建模块collections
2020/09/07 Python
实现Python3数组旋转的3种算法实例
2020/09/16 Python
python中append函数用法讲解
2020/12/11 Python
浅谈html5之sse服务器发送事件EventSource介绍
2017/08/28 HTML / CSS
美国最大的城市服装和运动鞋零售商:Jimmy Jazz
2016/11/19 全球购物
党的群众路线教育实践活动心得体会900字
2014/03/07 职场文书
民主生活会对照检查材料(统计局)
2014/09/21 职场文书
西安事变观后感
2015/06/12 职场文书
2015年暑假工作总结
2015/07/13 职场文书
强烈推荐:小学生:暑假作息时间表(值得收藏)
2019/07/09 职场文书
话题作文之关于呼唤
2019/11/29 职场文书
vue.js Router中嵌套路由的实用示例
2021/06/27 Vue.js
浅谈Redis变慢的原因及排查方法
2022/06/21 Redis