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中mechanize库的简单使用示例
Jan 10 Python
Python使用filetype精确判断文件类型
Jul 02 Python
python使用itchat库实现微信机器人(好友聊天、群聊天)
Jan 04 Python
详解python OpenCV学习笔记之直方图均衡化
Feb 08 Python
python3.6.3转化为win-exe文件发布的方法
Oct 31 Python
pandas 数据索引与选取的实现方法
Jun 21 Python
Django models.py应用实现过程详解
Jul 29 Python
学习Django知识点分享
Sep 11 Python
Python使用jupyter notebook查看ipynb文件过程解析
Jun 02 Python
解决Keras 中加入lambda层无法正常载入模型问题
Jun 16 Python
DRF框架API版本管理实现方法解析
Aug 21 Python
Pycharm的Available Packages为空的解决方法
Sep 18 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
thinkphp 多表 事务详解
2013/06/17 PHP
用PHP来计算某个目录大小的方法
2014/04/01 PHP
php setcookie函数的参数说明及其用法
2014/04/20 PHP
PHP+shell实现多线程的方法
2015/07/01 PHP
PHP实现防盗链的方法分析
2017/07/25 PHP
css3实现背景模糊的三种方式
2021/03/09 HTML / CSS
JavaScript 事件对象的实现
2009/07/13 Javascript
网站页面自动跳转实现方法PHP、JSP(下)
2010/08/01 Javascript
jQuery数组处理代码详解(含实例演示)
2012/02/03 Javascript
js jquery分别实现动态的文件上传操作按钮的添加和删除
2014/01/13 Javascript
Javascript玩转继承(一)
2014/05/08 Javascript
jquery根据锚点offset值实现动画切换
2014/09/11 Javascript
在JavaScript中使用NaN值的方法
2015/06/05 Javascript
jQuery得到多个值只能用取Class ,不能用取ID的方法
2016/12/04 Javascript
Jquery Easyui搜索框组件SearchBox使用详解(19)
2016/12/17 Javascript
web前端vue filter 过滤器
2018/01/12 Javascript
JavaScript正则表达式函数总结(常用)
2018/02/22 Javascript
记一次Vue.js混入mixin的使用(分权限管理页面)
2019/04/17 Javascript
express启用https使用小记
2019/05/21 Javascript
Vue中的transition封装组件的实现方法
2019/08/13 Javascript
js中位数不足自动补位扩展padLeft、padRight实现代码
2020/04/06 Javascript
Vue中的nextTick作用和几个简单的使用场景
2021/01/25 Vue.js
Python运行的17个时新手常见错误小结
2012/08/07 Python
python实现学生管理系统
2018/01/11 Python
python指定写入文件时的编码格式方法
2018/06/07 Python
使用python的pandas库读取csv文件保存至mysql数据库
2018/08/20 Python
详解Python图像处理库Pillow常用使用方法
2019/09/02 Python
django之导入并执行自定义的函数模块图解
2020/04/01 Python
python 提高开发效率的5个小技巧
2020/10/19 Python
CSS3文本换行word-wrap解决英文文本超过固定宽度不换行
2013/10/10 HTML / CSS
优秀班干部事迹材料
2014/01/26 职场文书
学习实践科学发展观心得体会
2014/09/10 职场文书
乡镇干部个人对照检查材料思想汇报(原创篇)
2014/09/28 职场文书
幼师求职自荐信
2015/03/26 职场文书
初中思想品德教学反思
2016/02/24 职场文书
python和anaconda的区别
2022/05/06 Python