在前面学习了findall()函数,它可以一次性找到多个匹配的字符串,但是不能提供所在的位置,并且是一起返回的,如果有数万个一起返回来,就不太好处理了,因此要使用finditer()函数来实现每次只返回一个,并且返回所在的位置,如下例子:

  1. #python 3. 6
  2. #蔡军生
  3. #http://blog.csdn.net/caimouse/article/details/51749579
  4. #
  5. import re
  6. text = 'http://blogcsdn.net/caimouse abbaaabbbbaaaaa'
  7. pattern = 'ab'
  8. for match in re.finditer(pattern, text):
  9. s = match.start()
  10. e = match.end()
  11. print('Found {!r} at {:d}:{:d}'.format(
  12. text[s:e], s, e))

结果输出如下:

Found 'ab' at 29:31
Found 'ab' at 34:36

最新文章

  1. js中的hasOwnProperty和isPrototypeOf方法
  2. testng xml中按顺序执行java类
  3. mysql 插入中文报错: com.mysql.jdbc.MysqlDataTruncation: Data truncation: Incorrect datetime value...
  4. Spreadsheet Calculator 电子表格计算器 (Uva 215)
  5. Microsoft Visual Studio 产品密钥
  6. [内存管理]连续内存分配器(CMA)概述
  7. Spring MVC的实现原理
  8. mysql查询锁表及解锁
  9. 32.Django form组件
  10. SPOJ 7258 Lexicographical Substring Search
  11. swagger.net 使用nginx 代理时出现端口号导致出错
  12. 【Connection Events】【BLE】【原创】
  13. 20165203 《网络对抗技术》week1 Kali的安装与配置
  14. 每帧创建一个item
  15. Vue.extend提供自定义组件的构造器
  16. day39 css
  17. 用pandas读取excel报错
  18. Tomcat8配置进入管理端
  19. block(四)揭开神秘面纱(下)-b
  20. Django中提供了6种缓存方式

热门文章

  1. Docker中使用Jenkins(3)
  2. vue 项目配置自动打压缩包
  3. 向mysql插入数据报错 pymysql.err.DataError: (1406, "Data too long for column 'class' at row 1") 解决方案
  4. CodeGym自学笔记12——类名
  5. javaweb项目启动脚本
  6. 【面试题】手写async await核心原理,再也不怕面试官问我async await原理
  7. 提供一个方法,遍历获取HashMap<String,String>中的所有value,并存放在list中返回,考虑泛型的使用
  8. span&不同字体
  9. Software--C#--grammer_Delegate--Event
  10. win10安装双版本mysql的方法