正则表达式之re模块findall()

转载 2018年04月17日 14:01:50
[python] view plain copy
>>> 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']  

正则 re.findall  的简单用法(返回string中所有与pattern相匹配的全部字串,返回形式为数组)
语法:
1
findall(pattern, string, flags=0)

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


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

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

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

我是先看了正则表达式30分钟入门教程 (网页)
然后看了 精通正则表达式 (豆瓣) (动物书)

Python中正则表达式re模块-compile()和findall()

正则表达式中字符含义: 预定义字符集 \d 数字:[0-9] \D 非数字:[^\d] \s 空白字符:[\t\f\r\v\n] \S 非空白字符:[^\s] ...
  • u011771047
  • u011771047
  • 2017-07-05 14:31:30
  • 312

Python 正则re模块之compile()和findall()详解

下面是Python3.5官方文档里关于的compile的说明: re.compile(pattern, flags=0) Compile a regular expression pattern in...
  • drdairen
  • drdairen
  • 2016-04-12 16:41:13
  • 44534

3分钟内理解Python的re模块中match、search、findall、finditer的区别

re就Python中用于正则表达式相关处理的类,这四个方法都是用于匹配字符串的,具体区别如下: match 匹配string 开头,成功返回Match object, 失败返回None,只匹配一个...
  • tp7309
  • tp7309
  • 2017-06-01 08:50:26
  • 5261

python中re模块(正则表达式模块)的使用学习

re.match 在字符串的开始位置匹配,如果匹配成功将返回MatchObject(值为True),否则返回None(值为False)。 函数原型 def match(pattern, string,...
  • churximi
  • churximi
  • 2016-06-01 19:52:29
  • 2873

Python 正则表达式 RE模块的使用方法

1.1. 开始使用re Python通过re模块提供对正则表达式的支持。使用re的一般步骤是先将正则表达式的字符串形式编译为Pattern实例,然后使用Pattern实例处理文本并获得匹配结果(...
  • krzover
  • krzover
  • 2017-03-18 11:32:39
  • 363

re模块:findall()

findall():查询字符串中某个正则表达式模式全部的非重复出现情况。
  • lanhui_1996
  • lanhui_1996
  • 2017-11-08 10:56:42
  • 41

正则表达式中的search、findall、finditer 区别

方法/属性 作用 match() 决定 RE 是否在字符串刚开始的位置匹配 search() 扫描字符串,找到这个 RE 匹配的位置 findall() 找到 RE 匹配的所有子串,并把它...
  • u010951938
  • u010951938
  • 2015-01-27 17:08:11
  • 2927

python之正则表达式匹配全部findall()方法

# __*__ coding:utf-8 __*__ import re m=re.findall('\\bfoo\\b','foo is foo foois foo isnotfoo') #上面的是...
  • mengtianwxs
  • mengtianwxs
  • 2016-09-25 15:29:03
  • 1581

python正则表达式-findall

python正则表达式-findall #coding=utf-8 import re ''' # 获取匹配的的内容 ''' p = re.compile(r'\d+') print '...
  • metecyu
  • metecyu
  • 2015-02-23 21:43:30
  • 1718

python 正则表达式 () findall

>>> import re >>> s = "adfad asdfasdf asdfas asdfawef asd adsfas " >>> reObj1 = re.compile('((\w...
  • yuebao1991
  • yuebao1991
  • 2016-03-14 16:14:18
  • 386
收藏助手
不良信息举报
您举报文章:正则表达式之re模块findall()
举报原因:
原因补充:

(最多只允许输入30个字)