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输出100以内的质数与合数实例代码
Jul 08 Python
python单例模式实例解析
Aug 28 Python
Python判断对象是否相等及eq函数的讲解
Feb 25 Python
Python实现堡垒机模式下远程命令执行操作示例
May 09 Python
Python中遍历列表的方法总结
Jun 27 Python
Python安装selenium包详细过程
Jul 23 Python
python单向链表的基本实现与使用方法【定义、遍历、添加、删除、查找等】
Oct 24 Python
Pyorch之numpy与torch之间相互转换方式
Dec 31 Python
Pytorch 实现权重初始化
Dec 31 Python
python实现扑克牌交互式界面发牌程序
Apr 22 Python
PyQt5 文本输入框自动补全QLineEdit的实现示例
May 13 Python
python+pygame实现坦克大战小游戏的示例代码(可以自定义子弹速度)
Aug 11 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
PHP缓存技术的多种方法小结
2012/08/14 PHP
老生常谈PHP数组函数array_merge(必看篇)
2017/05/25 PHP
jQuery 1.0.2
2006/10/11 Javascript
详解new function(){}和function(){}() 区别分析
2008/03/22 Javascript
基于jquery的横向滚动条(滑动条)
2011/02/24 Javascript
jquery 使用点滴函数代码
2011/05/20 Javascript
jquery实现隐藏与显示动画效果/输入框字符动态递减/导航按钮切换
2013/07/01 Javascript
js实现简单登录功能的实例代码
2013/11/09 Javascript
多个js毫秒倒计时同时进行效果
2016/01/05 Javascript
js如何找出字符串中的最长回文串
2018/06/04 Javascript
Nodejs实现多文件夹文件同步
2018/10/17 NodeJs
微信小程序如何刷新当前界面的实现方法
2019/06/07 Javascript
vue中使用vee-validator完成表单校验方案
2019/11/01 Javascript
Vue+Element-UI实现上传图片并压缩
2019/11/26 Javascript
vue开发移动端底部导航条功能
2020/04/08 Javascript
python网络编程之文件下载实例分析
2015/05/20 Python
Python3 伪装浏览器的方法示例
2017/11/23 Python
python中多个装饰器的执行顺序详解
2018/10/08 Python
python抖音表白程序源代码
2019/04/07 Python
Python3 实现文件批量重命名示例代码
2019/06/03 Python
使用Python实现毫秒级抢单功能
2019/06/06 Python
使用Python实现将list中的每一项的首字母大写
2019/06/11 Python
Python Unittest原理及基本使用方法
2020/11/06 Python
在Ubuntu中安装并配置Pycharm教程的实现方法
2021/01/06 Python
CSS3毛玻璃效果(blur)有白边问题的解决方法
2016/11/15 HTML / CSS
利用HTML5绘制点线面组成的3D图形的示例
2015/05/12 HTML / CSS
澳大利亚家具和家居用品在线商店:Interiors Online
2018/03/05 全球购物
Nike香港官网:Nike HK
2019/03/23 全球购物
应届生求职简历的自我评价怎么写
2013/10/23 职场文书
信息员培训方案
2014/06/12 职场文书
2014年安全生产责任书
2014/07/22 职场文书
2014领导班子四风剖析对照检查材料思想汇报
2014/09/20 职场文书
清洁工岗位职责
2015/02/13 职场文书
2015年新学期寄语
2015/02/26 职场文书
2015教师个人德育工作总结
2015/07/22 职场文书
Python利用capstone实现反汇编
2022/04/06 Python