爬虫_正则表达式
正则表达式(regular expression)是一种字符串匹配的模式(pattern)。它可以检查一个字符串是否含有某种子串;替换匹配的子串;提取某个字符串中匹配的子串。
# 导入正则模块 import re # 字符匹配 rs = re.findall('abc', 'adc') print(rs) rs = re.findall('a.c', 'abc') print(rs) rs = re.findall('a.c', 'a\nc') print(rs) rs = re.findall('a.c', 'a.c') print(rs) rs = re.findall('a\.c', 'a.c') print(rs) rs = re.findall('a\.c', 'abc') print(rs) rs = re.findall('a[bc]d', 'abd') print(rs) rs = re.findall('a[bc]d', 'acd') print(rs) # 预定义的字符集 rs = re.findall('\d', '123') # \w 匹配 下划线 字母 中文 rs = re.findall('\w', 'Az123_中文$%') #数量词 rs = re.findall('\d*', '123')
扫描整个string字符串,返回所有与pattern匹配的列表
-
pattern:正则表达式
-
string:string字符串中查找
-
flags:匹配模式
import re # 1.findall方法,返回匹配的结果列表 rs = re.findall('\d+', 'gazikel23Zihoo98') print(rs) # 2.findall方法中,flag参数的作用 rs = re.findall('a.bc', 'a\nbc', re.DOTALL) rs = re.findall('a.bc', 'a\nbc', re.S) print(rs)
如果正则表达式中有()中匹配的内容列表,小括号两边的东西都是负责提取数据所在位置。
# 3.findall方法中分组的使用 rs = re.findall('a(.+)bc', 'a\nbc', re.DOTALL) # ['\n'] print(rs)
正则中使用r原串,能够忽略转义符号带来的影响
将匹配的字符串中有多少个\,r原串正则中就添加多少个\即可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
2020-10-12 JavaScript