大数据 爬虫Python AI Sql正则表达式

学会正则表达式,爬遍所有网站都不怕!最详细的正则入门教程!

2018-07-05  本文已影响7人  919b0c54458f

百度百科上关于正则表达式的解释:

例:判断是否是手机号码

未采用正则表达式

re模块介绍

常用函数

re.match()函数:扫描整个字符串,返回从起始位置成功的匹配

语法:re.match(pattern, string, flags=0)

pattern 匹配的正则表达式;string 要匹配的字符串;flags 标志位,用于控制正则表达式的匹配方式,常见值如下:(re.I 忽略大小写;re.M 多行匹配)

re.search()函数:扫描整个字符串,并返回第一个成功的匹配(语法同上

findall()函数:扫描整个字符串,并返回结果列表(语法同上

匹配单个字符

. 匹配除换行符以外的任意字符

[123abc] []是字符集和,表示匹配方括号中所包含的任意一个字符

[^ Mark] 匹配除了 Mark 这几个字母以外的所有字符,中括号里的 ^ 称为脱字符,表示不匹配集合中的字符

d 匹配数字,效果同 [0-9]

D 匹配非数字字符,效果同 [^0-9]

w 匹配数字、字母和下划线,效果同 [0-9a-zA-Z_]

W 匹配非数字、字母和下划线,效果同 [^0-9a-zA-Z_]

s 匹配任意的空白符(空格、换行、回车、换页、制表),效果同 [ ]

S 匹配任意的非空白符,效果同 [^ ]

代码块

# 对 * 进行转义,进行非贪婪匹配print(re.findall(r"//*.*?/*/", r"/* one */ /* two */ ")) # ['/* one */', '/* two */']

大家可以去写一下关于 QQ 、邮箱、电话、用户名、密码、IP地址、URL的正则表达式来练下手。

是不是很强大,进群:125240963   即可获取数十套PDF哦!

上一篇 下一篇

猜你喜欢

热点阅读