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.当给出的正则表达式中不带括号时,列表的元素为字符串,此字符串为整个正则表达式匹配的内容。

相关推荐
wuyk5551 天前
Python网络爬虫入门到实战 第02章:HTTP/HTTPS协议超通俗精讲(GET/POST、请求头、响应码、爬虫核心基础)
爬虫·python·http
szial2 天前
网络爬虫与 CDP 实战(二):浏览器能访问,Python 却被拒绝?拆开登录态与 CSRF
爬虫·python·csrf
梅雅达编程笔记2 天前
04-Python CSV数据保存与翻页抓取
开发语言·爬虫·python·pandas·数据采集·csv
梅雅达编程笔记2 天前
03_网页表格数据抓取
爬虫·python·beautifulsoup·pandas·数据采集
傻啦嘿哟2 天前
爬虫代理IP池从0到1:构建高可用代理池,彻底解决IP被封问题
网络·爬虫·tcp/ip
szial2 天前
网络爬虫与 CDP 实战(一):网页数据到底在哪?从 HTTP 到分页采集
网络·爬虫·python·网络爬虫
深蓝电商API2 天前
反检测浏览器(比特/AdsPower)原理剖析与自建替代方案
爬虫·反检测浏览器
深蓝电商API3 天前
Puppeteer vs Playwright:多维度压测后的选型建议
爬虫·puppeteer·playwright
压码路3 天前
BOSS直聘网页端研究【2026年9月】
爬虫·语言模型·boss直聘
深蓝电商API3 天前
用 CDP 协议直连浏览器:绕过框架做更底层的控制
爬虫·cdp