栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

python(re模块爬虫专用)贪婪匹配和惰性匹配

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

python(re模块爬虫专用)贪婪匹配和惰性匹配

前言:

在我们写爬虫时请求网页之后常要提取数据 那么使用re模块正则表达式来> 提取数据是一个很好的办法。

这里只讲2中匹配技巧方法
一些小说明:
.(点):用来匹配任意非空格换行之类的字符
*:一个量词匹配多个或0个 类似于尽可能多的匹配
?: 一个量词匹配0个或1个 类似于尽可能少的匹配

贪婪匹配

.*: .后面加一个量词 * 那么就是尽可能多的匹配

惰性匹配

.? :当在 * 后面再加一个? 那么就是 ?修饰的前面. 那么就是说在 多出匹配的时候 我们取最近的

说的可能不是很清楚推荐个视频吧re模块视频

实际用法

  • re.compile(pattern[, flags])
    作用:把正则表达式语法转化成正则表达式对象
    flags定义包括:
    re.I:忽略大小写
    re.L:表示特殊字符集 w, W, b, B, s, S 依赖于当前环境
    re.M:多行模式
    re.S:’ . ’并且包括换行符在内的任意字符(注意:’ . ’不包括换行符)
    re.U: 表示特殊字符集 w, W, b, B, d, D, s, S 依赖于 Unicode 字符属性数据库
  • re.search(pattern, string[, flags])
    search (string[, pos[, endpos]])
    作用:在字符串中查找匹配正则表达式模式的位置,返回 MatchObject 的实例,如果没有找到匹配的位置,则返回 None。
  • match
    re.match(pattern, string[, flags])
    match(string[, pos[, endpos]])
    作用:match() 函数只在字符串的开始位置尝试匹配正则表达式,也就是只报告从位置 0 开始的匹配情况,而 search() 函数是扫描整个字符串来查找匹配。如果想要搜索整个字符串来寻找匹配,应当用 search()。
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/423585.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号