按照之前的课程安排,此次课程应该讲python基础第十六讲爬虫,但是如果正则一笔带过大家可能还是没办法写出自己想要实现的结果,所以把正则匹配详解提前学习一下,此次课程的学习路线会翻译官方的re模块文档,并且筛选出重点知识,完善文章中没有的DEMO。

学完此次课程,我能做什么?

此次课程我们会系统的学习一下python的正则表达式,以及可以根据自己的需求写出正确的正则表达式。

学习此次课程,需要多久?

15-20分钟,建议每个表达式跟着实践一下,加深印象

课程内容

Python中正则表达式 在 re 模块 — Regular expression operations

Python中的re模块提供与Perl类似的正则表达式匹配操作,但是要注意的是

需要注意的是:正则匹配时 表达式和要查询的字符串可以是 unicode字符串,也可是8-bit 字符串,但是两种模式不可以混合使用,也就是说 表达式和要查询的字符串必须一致。

正则表达式特殊字符:

.(点): 默认模式下,.可以匹配除了换行外的所有字符,如果需要匹配换行,可以传参 re.DOTALL。

运行结果:

^:只匹配字符串的开始位置,可以使用re.MULTILINE(匹配多行),匹配每一行的开始位置。

代码中每一行的开头都有ae字符串,所以开启多行模式后,会匹配两个结果。

运行结果:

$ : 与^相反,匹配字符串的结束位置,可以使用re.MULTILINE(匹配多行),匹配每一行的结尾位置。

运行结果:

: 匹配0个或多个的表达式

运行结果:

分析:c*表示,匹配字符"c"0次或者多次,也就是说会匹配 a,ac。: 匹配1个或多个的表达式

运行结果:

分析:匹配字符a并且c一次或者多次,所以会匹配ac或者accccc

? : 匹配0次或1次,非贪婪方式

运行结果:

分析:表达式“ac?” 匹配字符a或者ac(?只匹配0次或者1次,比较懒惰,不像上面的+或者*会匹配多次)

.? : 这三个特殊符号上面都讲过了,.是匹配任意字符匹配0次或者多次,连在一起使用也就是匹配全文了,加上?号,非贪婪模式匹配,将尽可能少的匹配结果。

匹配结果:

小结

正则匹配的语法是通用的,大家学会这些特殊字符,无论什么语言都能迅速入门。所以有必要好好学习一下。

关注公众号,回复 Python基础 下载全部代码+PDF版电子书

python爬虫要不要学正则_Python爬虫入门,如何使用正则表达式相关推荐

  1. python爬虫教程入门-零基础入门Python爬虫不知道怎么学?这是入门的完整教程

    原标题:零基础入门Python爬虫不知道怎么学?这是入门的完整教程 这是一个适用于小白的Python爬虫免费教学课程,只有7节,让零基础的你初步了解爬虫,跟着课程内容能自己爬取资源.看着文章,打开电脑 ...

  2. python零基础入门教程-零基础入门Python爬虫不知道怎么学?这是入门的完整教程...

    原标题:零基础入门Python爬虫不知道怎么学?这是入门的完整教程 这是一个适用于小白的Python爬虫免费教学课程,只有7节,让零基础的你初步了解爬虫,跟着课程内容能自己爬取资源.看着文章,打开电脑 ...

  3. python可以这样学豆瓣_python爬虫学习之路:豆瓣爬虫练习

    本人30岁大叔一枚,学习爬虫完全兴趣使然. 在此记录一下自己写的第一个爬虫项目,后面还会继续改进,加上多线程,让爬虫运行快起来 目标网站豆瓣图书标签: 小说​book.douban.com 想要获取的 ...

  4. python爬虫需要对象编程吗_Python爬虫基础知识及前期准备

    学习爬虫有一小段时间了,于是决定把自己学爬虫时所学的,写过的代码以及看过的文档记录下来,权当小结.第一次写这些,如果有错误,请多指教. 首先我们需要了解一下什么是爬虫. 根据百度百科上给出的定义,&q ...

  5. python爬虫源码怎么使用_Python爬虫具体应该怎么使用?

    1.首先,什么时候我们需要爬虫呢? 当我们需要某网站上的海量数据的时候,会发现,如果人工去把几百页,每页几十条到几百条的数据一条一条地复制下来,就太费时费力了,甚至根本就不可能.但是你做研究却需要这样 ...

  6. python爬取网页数据软件_python爬虫入门10分钟爬取一个网站

    一.基础入门 1.1什么是爬虫 爬虫(spider,又网络爬虫),是指向网站/网络发起请求,获取资源后分析并提取有用数据的程序. 从技术层面来说就是 通过程序模拟浏览器请求站点的行为,把站点返回的HT ...

  7. python爬取晋江小说简介_python爬虫——爬取小说 | 探索白子画和花千骨的爱恨情仇...

    知识就像碎布,记得"缝一缝",你才能华丽丽地亮相. 1.Beautiful Soup 1.Beautifulsoup 简介 此次实战从网上爬取小说,需要使用到Beautiful S ...

  8. python爬虫资源路径报错_python爬虫

    一.网络爬虫介绍 网络爬虫是一个自动提取网页的程序,它为搜索引擎从万维网上下载网页,是搜索引擎的重要组成. 例如,百度.google搜索某关键字时,就是爬取整个互联网上的相关资源,给呈现出来. 实际爬 ...

  9. python的scrapy框架的安装_Python爬虫基础(四)--Scrapy框架的安装及介绍

    Scrapy框架的介绍 安装: pip3 install Scrapy 安装测试: cmd命令行界面,输入:scrapy -h 框架安装完成: scrapy框架: 分为五个模块+两个中间件(5+2结构 ...

最新文章

  1. python什么时候用框架_Python 中三大框架各自的应用场景
  2. numpy 中的 squeeze() 函数
  3. 东大计算机专业自主招生,东大2018年自主招生计划不超过200人 招生专业分为7大类...
  4. yii 全选 php,Yii2.0实现的批量更新及批量插入功能示例
  5. SBO中流程控制功能的实现-SBO_SP_TransactionNotification
  6. 从入门到精通!java可视化编程软件哪个好
  7. mysql mdl 锁_MySQL MDL锁
  8. Linux问题处理————命令提示符显示 bash-4.1# 解决方案
  9. openssl数字证书常见格式与协议介绍
  10. 两个数组中对应的下标的值合成一个新的数组_剑指 offer 面试题精选图解 03 . 数组中重复的数字
  11. 记录一次通过抓包解决Zabbix no active checks on server
  12. 永久免费http升级到https
  13. 前端代码编辑器 sublime text 4 for Mac v4.0(4114) 中文设置
  14. 使用Spring自定义注解实现任务路由
  15. 利用python如何进行数据挖掘
  16. excel教程自学网_5个口碑爆棚的自学网站,不花一分钱直接看教程
  17. Golang 协程 跟Java NIO
  18. Hibernate的4种继承关系
  19. MacBook Air如何清理缓存
  20. ORA-39002: 操作无效 ORA-39070: 无法打开日志文件

热门文章

  1. UI实用可临摹素材|剖析UI界面设计基本原则!
  2. java一维打地鼠_Java编程实现打地鼠文字游戏实例代码
  3. python文件读写方法手机,python文本文件读写的3种方法
  4. docker wsl2启动不了_在window上安装docker的方法
  5. Linux虚拟化KVM-Qemu分析(四)之CPU虚拟化(2)
  6. Memcached 教程 | 菜鸟教程
  7. instr函数 mysql_mysql数据库中查找字串出现的位置instr函数
  8. git新建账号_github 账号创建
  9. 没有为此文件配置应用程序上下文_如何在macOS中管理文件关联?
  10. Python推导式comprehension:列表推导式、集合推导式、字典推导式