Python正则表达式实现截取成对括号的方法


Posted in Python onJanuary 06, 2017

本文实例讲述了Python正则表达式实现截取成对括号的方法。分享给大家供大家参考,具体如下:

strs = '1(2(3(4(5(67)6)7)8)9)0'
reg1 = re.compile('([()])∗') #一对括号
reg2 = re.compile('([()]|\([()]∗)*\)') #两对括号
reg3 = re.compile('([()]|\([()]∗|([()]|\([()]∗)*\))*\)') #三层

函数

#匹配成对括号正则表达式
def getReg(self, count, bracket = '()'):
    leftBracket = bracket[0]
    rightBracket = bracket[1]
    count -= 1
    regBasic = leftBracket + '(?:[^' + leftBracket + rightBracket + '])*' + rightBracket
    if count < 0:
      regBasic = ''
    if count > 0:
      for i in xrange(count):
        tempNum = regBasic.rfind('*') - 1
        regBasic = regBasic[:tempNum] + "|" + regBasic + regBasic[tempNum:]
    return regBasic
Python 相关文章推荐
Python读取Excel的方法实例分析
Jul 11 Python
Python argv用法详解
Jan 08 Python
Python实现代码统计工具(终极篇)
Jul 04 Python
Python基于matplotlib画箱体图检验异常值操作示例【附xls数据文件下载】
Jan 07 Python
python 在指定范围内随机生成不重复的n个数实例
Jan 28 Python
PyQt5实现简易计算器
May 30 Python
python scrapy爬虫代码及填坑
Aug 12 Python
Python OpenCV读取显示视频的方法示例
Feb 20 Python
Python3之外部文件调用Django程序操作model等文件实现方式
Apr 07 Python
解决python DataFrame 打印结果不换行问题
Apr 09 Python
keras load model时出现Missing Layer错误的解决方式
Jun 11 Python
keras 回调函数Callbacks 断点ModelCheckpoint教程
Jun 18 Python
关于Python元祖,列表,字典,集合的比较
Jan 06 #Python
Python线程指南详细介绍
Jan 05 #Python
Python爬虫代理IP池实现方法
Jan 05 #Python
在 Python 应用中使用 MongoDB的方法
Jan 05 #Python
深入理解python对json的操作总结
Jan 05 #Python
Python socket网络编程TCP/IP服务器与客户端通信
Jan 05 #Python
Python网络爬虫出现乱码问题的解决方法
Jan 05 #Python
You might like
PHP也可以?成Shell Script
2006/10/09 PHP
php遍历所有文件及文件夹的方法深入解析
2013/06/08 PHP
php实现俄罗斯乘法实例
2015/03/07 PHP
PHP防盗链的基本思想 防盗链的设置方法
2015/09/25 PHP
laravel批量生成假数据的方法
2019/10/09 PHP
PHP实现图片防盗链破解操作示例【解决图片防盗链问题/反向代理】
2020/05/29 PHP
Aster vs KG BO3 第三场2.19
2021/03/10 DOTA
javascript 实现 秒杀,团购 倒计时展示的记录 分享
2013/07/12 Javascript
js Math 对象的方法
2013/09/01 Javascript
引用 js在IE与FF之间的区别详细解析
2013/11/20 Javascript
利用JS判断用户是否上网(连接网络)
2013/12/23 Javascript
QQ空间顶部折页撕开效果示例代码
2014/06/15 Javascript
jQuery 写的简单打字游戏可以提示正确和错误的次数
2014/07/01 Javascript
JS制作简单的三级联动
2015/03/18 Javascript
IE7浏览器窗口大小改变事件执行多次bug及IE6/IE7/IE8下resize问题
2015/08/21 Javascript
详解js图片轮播效果实现原理
2015/12/17 Javascript
在JS中如何把毫秒转换成规定的日期时间格式实例
2017/05/11 Javascript
详解Angular 自定义结构指令
2017/06/21 Javascript
使用JS实现图片轮播的实例(前后首尾相接)
2017/09/21 Javascript
基于vue2实现左滑删除功能
2017/11/28 Javascript
解决循环中setTimeout执行顺序的问题
2018/06/20 Javascript
快速解决vue在ios端下点击响应延时的问题
2018/08/27 Javascript
layui实现三级导航菜单
2019/07/26 Javascript
vue elementUI 表单校验的实现代码(多层嵌套)
2019/11/06 Javascript
js实现列表向上无限滚动
2020/01/13 Javascript
原生js实现ajax请求和JSONP跨域请求操作示例
2020/03/14 Javascript
关于angular引入ng-zorro的问题浅析
2020/09/09 Javascript
Nuxt pages下不同的页面对应layout下的页面布局操作
2020/11/05 Javascript
wxPython中文教程入门实例
2014/06/09 Python
Python对列表的操作知识点详解
2019/08/20 Python
DJango的创建和使用详解(默认数据库sqlite3)
2019/11/18 Python
3D动画《斗罗大陆》上线当日播放过亿
2021/03/16 国漫
阿玛尼意大利官网:Armani意大利
2018/10/30 全球购物
中学生个人自我评价
2014/02/06 职场文书
SQLServer之常用函数总结详解
2021/08/30 SQL Server
Java练习之潜艇小游戏的实现
2022/03/16 Java/Android