python3 re返回形式总结


Posted in Python onNovember 20, 2020

我们在进行程序操作的时候,因为各种原因,需要通过不同的形式返回到之前的对象。不知道小伙伴们会几种返回的函数方法呢?今天要介绍的是findall和finditer这一对小伙伴,它们在输出的形式上有所不同。在这里小编先卖一个关子,想要知道答案的小伙伴,我们接着往下看。

findall(pattern, string, flags=0)

在字符串string中匹配所有符合正则表达式pattern的对象,并把这些对象通过列表list的形式返回。

import re
pattern = re.compile(r'\W+')
result1 = pattern.findall('hello world!')
result2 = pattern.findall('hello world!', 0, 7)
print(result1) #[' ', '!']
print(result2) #[' ']

finditer(pattern, string, flags=0)

在字符串string中匹配所有符合正则表达式pattern的对象,并把这些对象通过迭代器的形式返回。

import re
pattern = re.compile(r'\W+')
result = pattern.finditer('hello world!')
for r in result:
  print(r)
# <re.Match object; span=(5, 6), match=' '>
# <re.Match object; span=(11, 12), match='!'>

Python3 Re常用方法

常用的功能函数包括:compile、search、match、split、findall(finditer)、sub(subn)

1.compile

  • re.compile(pattern[, flags])

作用:把正则表达式语法转化成正则表达式对象

flags定义包括:

  • re.I:忽略大小写
  • re.L:表示特殊字符集 \w, \W, \b, \B, \s, \S 依赖于当前环境
  • re.M:多行模式
  • re.S:' . '并且包括换行符在内的任意字符(注意:' . '不包括换行符)
  • re.U: 表示特殊字符集 \w, \W, \b, \B, \d, \D, \s, \S 依赖于 Unicode 字符属性数据库

2.search

  • re.search(pattern, string[, flags])

作用:在字符串中查找匹配正则表达式模式的位置,返回 MatchObject 的实例,如果没有找到匹配的位置,则返回 None。

3.match

  • re.match(pattern, string[, flags])
  • match(string[, pos[, endpos]])

作用:match() 函数只在字符串的开始位置尝试匹配正则表达式,也就是只报告从位置 0 开始的匹配情况,

而 search() 函数是扫描整个字符串来查找匹配。如果想要搜索整个字符串来寻找匹配,应当用 search()。

到此这篇关于python3 re返回形式总结的文章就介绍到这了,更多相关python3 re有哪些返回形式内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python模拟enum枚举类型的方法小结
Apr 30 Python
Python 基础知识之字符串处理
Jan 06 Python
Python3实现购物车功能
Apr 18 Python
python3实现域名查询和whois查询功能
Jun 21 Python
对numpy中的数组条件筛选功能详解
Jul 02 Python
Sanic框架路由用法实例分析
Jul 16 Python
Flask框架URL管理操作示例【基于@app.route】
Jul 23 Python
python dict 相同key 合并value的实例
Jan 21 Python
pyqt5 实现在别的窗口弹出进度条
Jun 18 Python
在PyTorch中使用标签平滑正则化的问题
Apr 03 Python
python 用递归实现通用爬虫解析器
Apr 16 Python
Python实现信息管理系统
Jun 05 Python
python 实现图片修复(可用于去水印)
Nov 19 #Python
python 删除系统中的文件(按时间,大小,扩展名)
Nov 19 #Python
Python并发爬虫常用实现方法解析
Nov 19 #Python
python实现文件分片上传的接口自动化
Nov 19 #Python
Python类class参数self原理解析
Nov 19 #Python
Python爬虫如何破解JS加密的Cookie
Nov 19 #Python
python制作一个简单的gui 数据库查询界面
Nov 19 #Python
You might like
作为PHP程序员应该了解MongoDB的五件事
2013/06/03 PHP
php无序树实现方法
2015/07/28 PHP
确保Laravel网站不会被嵌入到其他站点中的方法
2019/10/18 PHP
jQuery jqgrid 对含特殊字符json 数据的 Java 处理方法
2011/01/01 Javascript
利用js实现选项卡的特别效果的实例
2013/03/03 Javascript
jQuery实现两款有动画功能的导航菜单代码
2015/09/16 Javascript
jQuery实现滑动页面固定顶部显示(可根据显示位置消失与替换)
2015/10/28 Javascript
nodejs初步体验篇
2015/11/23 NodeJs
Jquery针对tr td的一些实用操作方法(必看篇)
2016/10/05 Javascript
详解微信小程序开发之城市选择器 城市切换
2017/01/17 Javascript
js实现无缝滚动图
2017/02/22 Javascript
Angular1.x复杂指令实例详解
2017/03/01 Javascript
get  post jsonp三种数据交互形式实例详解
2017/08/25 Javascript
vue-cli扩展多模块打包的示例代码
2018/04/09 Javascript
解决vue 格式化银行卡(信用卡)每4位一个符号隔断的问题
2018/09/14 Javascript
微信jssdk逻辑在vue中的运用详解
2018/11/14 Javascript
[04:42]5分钟带你了解什么是DOTA2(第一期)
2017/02/07 DOTA
python正则匹配查询港澳通行证办理进度示例分享
2013/12/27 Python
实例讲解python函数式编程
2014/06/09 Python
使用PDB模式调试Python程序介绍
2015/04/05 Python
Python实现模拟时钟代码推荐
2015/11/08 Python
Python使用装饰器模拟用户登陆验证功能示例
2018/08/24 Python
python 与服务器的共享文件夹交互方法
2018/12/27 Python
Python数据可视化库seaborn的使用总结
2019/01/15 Python
python同步windows和linux文件
2019/08/29 Python
pytorch之Resize()函数具体使用详解
2020/02/27 Python
html5 canvas-2.用canvas制作一个猜字母的小游戏
2013/01/07 HTML / CSS
加拿大最大的体育用品、鞋类和服装零售商:Sport Chek
2018/11/29 全球购物
芬兰设计商店美国:Finnish Design Shop US
2019/03/25 全球购物
大学生优秀团员事迹材料
2014/01/30 职场文书
事业单位绩效考核实施方案
2014/03/27 职场文书
2014院党委领导班子对照检查材料思想汇报
2014/09/24 职场文书
2014五年级班主任工作总结
2014/12/05 职场文书
2015毕业生简历自我评价
2015/03/02 职场文书
linux下安装redis图文详细步骤
2021/12/04 Redis
Spring boot实现上传文件到本地服务器
2022/08/14 Java/Android