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实现全局变量的两个解决方法
Jul 03 Python
Python迭代用法实例教程
Sep 08 Python
Python中为什么要用self探讨
Apr 14 Python
python 判断是否为正小数和正整数的实例
Jul 23 Python
python with提前退出遇到的坑与解决方案
Jan 05 Python
Python实现将多个空格换为一个空格.md的方法
Dec 20 Python
浅谈Python 多进程默认不能共享全局变量的问题
Jan 11 Python
python环境路径配置以及命令行运行脚本
Apr 02 Python
使用Python正则表达式操作文本数据的方法
May 14 Python
PyQt QCombobox设置行高的方法
Jun 20 Python
使用NumPy读取MNIST数据的实现代码示例
Nov 20 Python
安装完Python包然后找不到模块的解决步骤
Feb 13 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
mysql 字段类型说明
2007/04/27 PHP
[JS源码]超长文章自动分页(客户端版)
2007/01/09 Javascript
JS类定义原型方法的两种实现的区别评论很多
2007/09/12 Javascript
利用javascript/jquery对上传文件格式过滤的方法
2009/07/25 Javascript
jquery实现的可隐藏重现的靠边悬浮层实例代码
2013/05/27 Javascript
JSON序列化与解析原生JS方法且IE6和chrome测试通过
2013/09/05 Javascript
js单例模式详解实例
2013/11/21 Javascript
node.js中的fs.linkSync方法使用说明
2014/12/15 Javascript
js实现动画特效的文字链接鼠标悬停提示的方法
2015/03/02 Javascript
Vue 表单控件绑定的实现示例
2017/08/11 Javascript
vue3.0 CLI - 2.3 - 组件 home.vue 中学习指令和绑定
2018/09/14 Javascript
vue-cli webpack 引入swiper的操作方法
2018/09/15 Javascript
在vue项目中,将juery设置为全局变量的方法
2018/09/25 Javascript
基于vue和react的spa进行按需加载的实现方法
2018/09/29 Javascript
详解使用angular框架离线你的应用(pwa指南)
2019/01/31 Javascript
原生js实现3D轮播图
2020/03/21 Javascript
JavaScript修改注册表实例代码
2020/01/05 Javascript
小程序按钮避免多次调用接口和点击方案实现(不用showLoading)
2020/04/15 Javascript
[04:52]第二届DOTA2亚洲邀请赛主赛事第一天比赛集锦:OG娜迦海妖放大配合谜团大中3人
2017/04/02 DOTA
[38:42]完美世界DOTA2联赛循环赛 Matador vs Forest BO2第二场 11.05
2020/11/05 DOTA
[55:26]DOTA2-DPC中国联赛 正赛 Aster vs LBZS BO3 第一场 2月23日
2021/03/11 DOTA
python清除字符串里非字母字符的方法
2015/07/02 Python
Python实现读取文件最后n行的方法
2017/02/23 Python
Python-OpenCV基本操作方法详解
2018/04/02 Python
详解django2中关于时间处理策略
2019/03/06 Python
python使用time、datetime返回工作日列表实例代码
2019/05/09 Python
Python利用PyExecJS库执行JS函数的案例分析
2019/12/18 Python
加拿大折扣、优惠券和交易网站:WagJag
2018/02/07 全球购物
Nike意大利官网:Nike.com IT
2020/01/19 全球购物
武汉英思工程科技有限公司&ndash;ORACLE面试测试题目
2012/04/30 面试题
航空大学应届生求职信
2013/11/10 职场文书
员工晚婚的请假条
2014/02/08 职场文书
《法国号》教学反思
2016/02/22 职场文书
Navicat for MySQL的使用教程详解
2021/05/27 MySQL
Anaconda配置各版本Pytorch的实现
2021/08/07 Python
Oracle 触发器trigger使用案例
2022/02/24 Oracle