python日记Day22——网络爬虫之Re库
python日记——网络爬虫之Re库
-
正则表达式
1、概念:
正则表达式,regular expression,是用来简洁表达一组字符串的表达式
2、优势:
一行胜千言,无穷字符串组的简洁表达
3、应用:
最主要应用在字符串匹配中
4、语法:
正则表达式语法由字符和操作符构成
(1)常用操作符:
(2)实例:
(3)经典正则表达式:
-
Re库的基本使用
1、re库是Python的标准库,主要用于字符串匹配
2、re库采用raw string类型(原生字符串类型)表示正则表达式,表示为:r’text’,例如: r’[1‐9]\d{5}’
3、re库主要函数:
re.search/match/findall/finditer(pattern, string, flags=0)
re.split(pattern, string, maxsplit=0, flags=0)
re.sub(pattern, repl, string, count=0, flags=0)
参数详解:
∙ count : 匹配的最大替换次数
∙ repl : 替换匹配字符串的字符串
∙ maxsplit: 最大分割数,剩余部分作为最后一个元素输出
∙ pattern : 正则表达式的字符串或原生字符串表示
∙ string : 待匹配字符串
∙ flags : 正则表达式使用时的控制标记
4、re库的一种等价用法
将正则表达式的字符串形式编译成正则表达式对象,功能函数与函数式用法一致,只是少了 pattern参数
5、Match对象
(1)Match对象是一次匹配的结果,包含匹配的很多信息
(2)Match对象的属性:
(3)Match对象的方法:
6、re库的贪婪匹配和最小匹配
(1)re库默认采用贪婪匹配,即输出匹配最长的子串
(2)最小匹配:
只要长度输出可能不同的,都可以通过在操作符后增加?变成最小匹配
本文部分内容参考于北京理工大学嵩天老师相关课程