python正则表达式re模块详解


Posted in Python onJune 25, 2014

快速入门

import re

pattern = 'this'
text = 'Does this text match the pattern?'

match = re.search(pattern, text)

s = match.start()
e = match.end()

print('Found "{0}"\nin "{1}"'.format(match.re.pattern, match.string))
print('from {0} to {1} ("{2}")'.format( s, e, text[s:e]))

执行结果:

#python re_simple_match.py 
Found "this"
in "Does this text match the pattern?"
from 5 to 9 ("this")
import re

# Precompile the patterns
regexes = [ re.compile(p) for p in ('this', 'that')]
text = 'Does this text match the pattern?'

print('Text: {0}\n'.format(text))

for regex in regexes:
  if regex.search(text):
    result = 'match!'
  else:
    result = 'no match!'
    
  print('Seeking "{0}" -> {1}'.format(regex.pattern, result))

执行结果:

#python re_simple_compiled.py 
Text: Does this text match the pattern?

Seeking "this" -> match!
Seeking "that" -> no match!

import re

text = 'abbaaabbbbaaaaa'

pattern = 'ab'

for match in re.findall(pattern, text):
  print('Found "{0}"'.format(match))

执行结果:

#python re_findall.py 
Found "ab"
Found "ab"

import re

text = 'abbaaabbbbaaaaa'

pattern = 'ab'

for match in re.finditer(pattern, text):
  s = match.start()
  e = match.end()
  print('Found "{0}" at {1}:{2}'.format(text[s:e], s, e))

执行结果:

#python re_finditer.py 
Found "ab" at 0:2
Found "ab" at 5:7
Python 相关文章推荐
一波神奇的Python语句、函数与方法的使用技巧总结
Dec 08 Python
tensorflow实现对图片的读取的示例代码
Feb 12 Python
TensorFlow saver指定变量的存取
Mar 10 Python
Python生成器generator用法示例
Aug 10 Python
python http基本验证方法
Dec 26 Python
详解Python列表赋值复制深拷贝及5种浅拷贝
May 15 Python
Python中的asyncio代码详解
Jun 10 Python
解决django后台样式丢失,css资源加载失败的问题
Jun 11 Python
Python实现的北京积分落户数据分析示例
Mar 27 Python
浅谈Django中的QueryDict元素为数组的坑
Mar 31 Python
详解Python中@staticmethod和@classmethod区别及使用示例代码
Dec 14 Python
pandas求平均数和中位数的方法实例
Aug 04 Python
Python通过websocket与js客户端通信示例分析
Jun 25 #Python
Flask框架学习笔记(一)安装篇(windows安装与centos安装)
Jun 25 #Python
Python中文编码那些事
Jun 25 #Python
教你如何在Django 1.6中正确使用 Signal
Jun 22 #Python
python抓取网页时字符集转换问题处理方案分享
Jun 19 #Python
python在linux中输出带颜色的文字的方法
Jun 19 #Python
解决windows下Sublime Text 2 运行 PyQt 不显示的方法分享
Jun 18 #Python
You might like
ajax完美实现两个网页 分页功能的实例代码
2013/04/16 PHP
thinkphp文件处理类Dir.class.php的用法分析
2014/12/08 PHP
PHP实现的带超时功能get_headers函数
2015/02/10 PHP
PHP面向对象五大原则之里氏替换原则(LSP)详解
2018/04/08 PHP
js二维数组定义和初始化的三种方法总结
2014/03/03 Javascript
javascript日期比较方法实例分析
2016/06/17 Javascript
JavaScript Uploadify文件上传实例
2017/02/28 Javascript
jQuery插件HighCharts绘制2D柱状图、折线图的组合双轴图效果示例【附demo源码下载】
2017/03/09 Javascript
js判断PC端与移动端跳转
2020/12/24 Javascript
node.js-v6新版安装具体步骤(分享)
2017/09/06 Javascript
详解基于 Nuxt 的 Vue.js 服务端渲染实践
2017/10/24 Javascript
JS实现生成由字母与数字组合的随机字符串功能详解
2018/05/25 Javascript
vue router 源码概览案例分析
2018/10/09 Javascript
JavaScrip数组去重操作实例小结
2019/06/20 Javascript
使用jquery实现轮播图效果
2021/01/02 jQuery
Vue中强制组件重新渲染的正确方法
2021/01/03 Vue.js
学习python的几条建议分享
2013/02/10 Python
Python绘制3D图形
2018/05/03 Python
在Django中输出matplotlib生成的图片方法
2018/05/24 Python
python在新的图片窗口显示图片(图像)的方法
2019/07/11 Python
python 判断三个数字中的最大值实例代码
2019/07/24 Python
Pytorch技巧:DataLoader的collate_fn参数使用详解
2020/01/08 Python
python和go语言的区别是什么
2020/07/20 Python
什么是用户模式(User Mode)与内核模式(Kernel Mode) ?
2015/09/07 面试题
印刷技术专业自荐信
2014/09/18 职场文书
学校运动会广播稿
2014/10/11 职场文书
学习党章的体会
2014/11/07 职场文书
小学生差生评语
2014/12/29 职场文书
2015国庆节66周年演讲稿
2015/03/20 职场文书
事业单位工作人员2015年度思想工作总结
2015/10/15 职场文书
搞笑婚礼主持词开场白
2015/11/24 职场文书
青少年法制教育心得体会
2016/01/14 职场文书
《学会生存》读后感3篇
2019/12/09 职场文书
css 边框添加四个角的实现代码
2021/10/16 HTML / CSS
Python实现老照片修复之上色小技巧
2021/10/16 Python
sql server 累计求和实现代码
2022/02/28 SQL Server