python findall方法_Python_47findall方法

1、应用范围

findall把匹配到的东西,都放到列表里边

print (re.findall("\d+\w\d+","a2d3d4r5st6y7u"))

输出结果为:['2d3', '4r5', '6y7']

print (re.findall("","a2d3d4r5st6y7u"))

输出结果为:['', '', '', '', '', '', '', '', '', '', '', '', '', '', '']

testss='helloss alex bcd alex dd acd 19s'

r=re.search('a(\w+)',testss)

print (r.group())

输出结果为:alex

testss='helloss alex bcd alex dd acd 19s'

r=re.findall('a(\w+)',testss)

print (r)

输出为:['lex', 'lex', 'cd']

testss='helloss alex bcd alex dd acd 19s'

r=re.findall('(a)(\w+)',testss)

print (r)

输出结果为:[('a', 'lex'), ('a', 'lex'), ('a', 'cd')]

findall方法是没有字典的

testss='helloss alexe bcd alex dd acd 19s'

r=re.findall('(a)(\w+(e))(x)',testss)

print (r)

输出结果是:[('a', 'le', 'e', 'x'), ('a', 'le', 'e', 'x')]

testss='helloss alexe bcd alex dd acd 19s'

r=re.findall('(a)(\w+(e))(x)(?Px)',testss)

print (r)

输出结果是:[]

testss='helloss alexe bcd alex dd acd 19s'

r=re.finditer('(a)(\w+(e))(?Px)',testss)

print (r) #输出结果是可以被调用的迭代

for i in r:

print (i)#这个i就是和match到的结果是一样的 也有group。。。。。

输出结果是:

import re

a='alex'

n=re.findall('(\w)+',a)

print (n) #输出['x'] 带‘+’号贪婪匹配,取最后一个分组

n=re.findall('(\w+)',a)

print (n)#输出['alex']

n=re.findall('(\w)',a)

print (n)#输出['a', 'l', 'e', 'x']

n=re.findall('(\w)*',a)

print (n)#输出['x', '']

n=re.findall('(\d\w\w\w)','1qsx2wdc3edccee4rf5tgddd7uj')

print (n)#输出['1qsx', '2wdc', '3edc', '4rf5']

n=re.findall('(\d\w\w\w)*','1qsx2wdc3edccee4rf5tgddd7uj')

print (n)#输出['3edc', '', '', '', '4rf5', '', '', '', '', '', '', '', '', '']

匹配条件 加了()就是分组匹配的了

2、

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python中,find_all()是Beautiful Soup库中的一个方法,用于在HTML或XML文档中查找所有符合条件的标签。它的语法是soup.find_all(name, attrs, text, limit, recursive)。其中name参数用于指定要查找的标签名称,attrs参数用于指定标签的属性,text参数用于指定标签的文本内容,limit参数用于限制返回的结果数量,recursive参数用于指定是否递归查找子标签。\[2\]\[3\] 例如,如果我们想要查找所有的title标签,可以使用以下代码: ``` soup.find_all('title') ``` 这将返回文档中所有的title标签。如果我们只想得到一个结果,可以使用find()方法,它与设置limit=1的find_all()方法等效: ``` soup.find('title') ``` 这将返回文档中第一个title标签。\[2\] 需要注意的是,find_all()方法返回的是一个列表,包含了所有符合条件的标签。我们可以通过遍历这个列表来获取每个标签的具体内容。 #### 引用[.reference_title] - *1* [Python 正则表达式:findall](https://blog.csdn.net/weixin_34186931/article/details/93021338)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [python爬虫之 find_all 及 find 相关用法](https://blog.csdn.net/weixin_46049759/article/details/110263207)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值