文章目录

  • re模块使用
    • finditer
      • 举个例子
    • fullmatch
      • 举个例子
    • match
      • 举个例子
    • search
      • 举个例子

re模块使用

finditer

re.finditer(pattern,string,flags = 0)功能: 根据正则表达式匹配目标字符串内容参数: pattern  正则表达式string 目标字符串flags  功能标志位,扩展正则表达式的匹配返回值: 匹配结果的迭代器,注意是迭代器,不是被迭代对象!

举个例子

代码1:

输出结果1:

由以上结果可知,我们迭代出来的两个元素是对象,那么这个对象是啥呢?这个对象就是match对象,它是对匹配结果的一种表达。
我们看一下示意图:

这里,我们利用match对象的group方法,取出结果。

代码2(使用for循环):

输出结果2:

代码3(使用__next__()):

输出结果3:

fullmatch

re.fullmatch(pattern,string,flags=0)
功能:完全匹配某个目标字符串
参数:pattern 正则string  目标字符串
返回值:匹配内容match object

备注:完全匹配意思是指正则表达式必须将目标字符串的全部字符匹配出来,如果不能匹配全部字符,则就算没有匹配到。换句话说。当我们使用完全匹配时,就相当于人为的在正则表达式之前加^, 之后加$.

举个例子

代码1(未完全匹配到):

输出结果1:

没有完全匹配到,就会报错。

代码2(完全匹配到了):

输出结果2:

match

re.match(pattern,string,flags=0)
功能:匹配某个目标字符串开始位置
参数:pattern 正则string  目标字符串
返回值:匹配内容match object

举个例子

代码:

我们想匹配,以大写字母开头的单词,且从字符串的开始位置进行匹配。

输出结果:

嗯!果然匹配结果只有Hello.

search

re.search(pattern,string,flags=0)
功能:匹配目标字符串第一个符合内容(即只能匹配一处)
参数:pattern 正则string  目标字符串
返回值:匹配内容match object

举个例子

代码:

结果:

嗯!只匹配了第一个符合要求的内容,就不进行匹配了。

python与正则表达式(part7)--re模块使用相关推荐

  1. python基础—正则表达式即re模块

    正则表达式(regular expression),就是字符匹配模式,而这个匹配规则在我们写爬虫进行数据提取,或者进行数据可视化进行数据清洗时经常用到,多样化的匹配规则在复杂的字符的情况提取数据时助我 ...

  2. Python学习——正则表达式与re模块实现字符串计算器

    学习了python的正则表达式后,一片懵逼,不知道干啥用的,也不知道咋用,只能放一些实例和正则表达式的规则以备后续查阅,希望在经过长时间的训练和使用后能对正则表达式有一个深刻的理解.什么是正则表达式呢 ...

  3. python爬虫 -- 正则表达式 与 Re模块的介绍

    Regular Expression,正则表达式,一种使用表达式的方式对字符串进行匹配的语法规则. 爬虫中我们抓取到的网页源代码本质上就是一个超长的字符串,想从里面提取内容.用正则再合适不过了. 正则 ...

  4. Python高级——正则表达式与re模块

    正则表达式 构成 原子(普通字符,如英文字符) 元字符(有特殊功用的字符) 模式修正字符 1.匹配单个字符 字符 功能 . 匹配任意1个字符(除了\n) [ ] 匹配[ ]中列举的字符 \d 匹配数字 ...

  5. Python的正则表达式和re模块

    1. 正则表达式 1.1 用处 正则表达式就是记录文本规则的代码 这句话我觉得概括的很精炼. 1.2 元字符 正则表达式里有一些元字符, 他们代表的是很多意思, 有某种特征的集合呀, 不包括某种字符的 ...

  6. python之正则表达式及RE模块

    正则表达式(匹配字符串) web界面正则匹配工具: http://tool.chinaz.com/regex/ 元字符 1 . 匹配除换行符之外的任意字符2 \w 匹配数字字母下划线3 \d 匹配数字 ...

  7. python与正则表达式(part6)--re模块使用

    文章目录 re模块使用 split 举个例子 sub 举个例子 subn 举个例子 re模块使用 split re.split(pattern,string,flags = 0) 功能: 使用正则表达 ...

  8. python与正则表达式(part5)--re模块使用

    文章目录 re模块使用 compile 举个例子 findall re.findall(re模块下的findall方法) 举个例子1 举个例子2(compile对象调用findall()) regex ...

  9. 《疯狂Python讲义》之常见模块

    sys sys模块中常用的属性和函数: sys.argv:获取运行Python程序的命令行参数 sys.byteorder:显示本地字节序的指示符 sys.copyright:该属性返回与Python ...

最新文章

  1. webflux切面拦截权限,webflux整合aop,webflux获取request
  2. 三态门三个状态vhdl_人防门是什么?为什么会侵线导致重庆地铁事故
  3. spring boot输出hello world几种方法
  4. Google Guava MultiMaps
  5. datepicker不能选择是为什么_为什么客厅不好看?休闲椅选错了
  6. 阿里巴巴开源AI技术:强化学习在阿里的技术演进与业务创新
  7. python面试资格确认_Python面试必须要看的15个问题
  8. 要连plsql是不是要装oracle,PLSQL直接连接数据库,不装ORACLE
  9. Android 框架揭秘 --读书笔记
  10. vivo android 6.0 root,vivo X6 A(全网通)如何获取ROOT权限教程
  11. Windows64位下DNW的安装及使用
  12. 再访《Scratch少儿趣味编程》系列图书作者阿部和广、仓本大资
  13. [LeetCode刷题笔记]714 - 买卖股票的最佳时机含手续费(C++/Python3/Java/动态规划/贪心)
  14. Matlab2019 slrt(XPC)目标机U盘启动
  15. vue 首屏优化加载(三)(CND引用)
  16. python爬虫必备防检测工具
  17. symfony老版本自主学习
  18. 吓人!半夜,这个程序从虚拟机里跑出来了!
  19. Tomcat8源码解析
  20. android查看内存使用情况

热门文章

  1. 清华大学梁宸计算机系,2015年广东高考高等学校自主招生录取考生名单公示(2)...
  2. linux学习笔记:1.基础知识和命令行基本操作
  3. 数据加密 - TDE透明数据加密原理
  4. Struts2 学习系列 (2) 访问web资源
  5. 图解Android事件传递之ViewGroup篇
  6. Java数据解析---PULL
  7. [转]重新分配内置存储空间 android手机
  8. 碰撞的小球 ccf (模拟)
  9. Effective Java读书笔记完结啦
  10. 【剑指offer】二叉树的深度_solution2