学习笔记:网络机器人2.3正则表达式

这篇学习笔记介绍了Python中的正则表达式使用,包括match用于从头匹配,search进行全局匹配,group获取匹配内容,findall匹配所有实例。同时,提到了re.S标志用于匹配换行符,re.I标志实现不区分大小写的匹配。文中还强调了惰性匹配的概念,如.*?,它仅匹配到第一次出现的结束,不再继续匹配相同内容。最后,指出compile函数用于编译正则表达式,findall用于查找所有匹配项。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Python中的正则表达式
match 从头匹配
search 全局匹配
group 获取内容
findall 匹配全部

re.S 匹配换行符
re.I 不区分大小写

惰性匹配就是匹配文本第一次结束,后边还有一样的也不去匹配了

import re  # 导入正则表达式模块

text = 'hellohellohello'  # 定义字符串
r = re.compile('h.*?o',re.S|re.I)  # 正则表达式
print(r.search(text).group())  # 匹配字符串,获取内容

compile 里边编写正则表达式
findall用于查找全部
.*?为惰性匹配

import re  # 导入正则表达式模块

text = 'hellohellohello'  # 定义字符串
r = re.compile('h.*?o',re.S|re.I)  # 正则表达式
print(r.findall(text))  # 匹配全部
import requests   # 导入网络请求模块
import re  # 导入正则表达式模块

headers={
    'Cookie':'xxx',
    'User-Agent':'xxx'
}   # 定制请求头
url_re = re.compile('href = "(.*?)"')  # 正则表达式
url = 'https://www.baidu.com/s?wd=python'  # 找到网址
html = requests.get(url,headers=headers)   # get请求
html.encoding='utf-8'  # 设置编码格式为'utf-8'
urls=url_re.findall(html.text)  # 选取网页内容
for u in urls:  # 遍历选取的网页内容
    print(u)  # 输出内容
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值