python re模块findall()函数实例解析

yipeiwu_com5年前Python基础

本文研究的是re模块findall()函数的相关内容,首先看看实例代码:

>>> import re 
>>> s = "adfad asdfasdf asdfas asdfawef asd adsfas " 
 
>>> reObj1 = re.compile('((\w+)\s+\w+)') 
>>> reObj1.findall(s) 
[('adfad asdfasdf', 'adfad'), ('asdfas asdfawef', 'asdfas'), ('asd adsfas', 'asd')] 
 
>>> reObj2 = re.compile('(\w+)\s+\w+') 
>>> reObj2.findall(s) 
['adfad', 'asdfas', 'asd'] 
 
>>> reObj3 = re.compile('\w+\s+\w+') 
>>> reObj3.findall(s) 
['adfad asdfasdf', 'asdfas asdfawef', 'asd adsfas'] 

按以上代码例子讲解:

findall函数返回的总是正则表达式在字符串中所有匹配结果的列表,此处主要讨论列表中“结果”的展现方式,即findall中返回列表中每个元素包含的信息。

@1.当给出的正则表达式中带有多个括号时,列表的元素为多个字符串组成的tuple,tuple中字符串个数与括号对数相同,字符串内容与每个括号内的正则表达式相对应,并且排放顺序是按括号出现的顺序。

@2.当给出的正则表达式中带有一个括号时,列表的元素为字符串,此字符串的内容与括号中的正则表达式相对应(不是整个正则表达式的匹配内容)。

@3.当给出的正则表达式中不带括号时,列表的元素为字符串,此字符串为整个正则表达式匹配的内容。

总结

以上就是本文关于python re模块findall()函数实例解析的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

相关文章

Python实现把多维数组展开成DataFrame

如下所示: import numpy as np import pandas as pd ################# 准备数据 ################# a1 =...

python迭代器常见用法实例分析

本文实例讲述了python迭代器常见用法。分享给大家供大家参考,具体如下: 迭代器 迭代是访问集合元素的一种方式。迭代器是一个可以记住遍历的位置的对象。迭代器对象从集合的第一个元素开始访...

新手如何发布Python项目开源包过程详解

新手如何发布Python项目开源包过程详解

本文假设你在 GitHub 上已经有一个想要打包和发布的项目。 第 0 步:获取项目许可证 在做其他事之前,由于你的项目要开源,因此应该有一个许可证。获取哪种许可证取决于项目包的使用方式...

python3利用tcp实现文件夹远程传输

本文实例为大家分享了python实现文件夹远程传输的具体代码,供大家参考,具体内容如下 实现功能: 通过tcp协议模拟文件夹的下载,注意是文件夹,不是文件。 下面让我们实现以下: 其中...

python+ffmpeg批量去视频开头的方法

用来批量切割视频的开头部分,比如去掉一部电视剧的序幕,看着难受不说数量还很多,很菜鸟的一篇,毕竟我也是一个菜鸟,首先要有ffmpeg这个软件,安装什么的就不说了,网上一搜就出来了,直接给...