py爬虫学习

正则表达式
数据提取与清洗
正则表达式(regular expression)描述了一种字符串匹配的模式(pattern),可以用来检查一个串是否含有某种子串、将匹配的子串替换或者从某个串中取出符合某个条件的子串等。

.除了\n和\r的所有字符
\d数字
\D非数字
\w字母和下划线
\W非字母和下划线
\s空格(包括制表符,换页符)
[a-z]小写英文字符
[a-zA-Z0-9]大小写英文字母与数字
[123]数字123
[^123]不是数字123
*出现次数>=0
+出现次数>=1
{n}出现次数=n
{n,m}出现次数大于等于n小于等于m
^,$以开头,以结尾
关闭贪婪模式
()用于获取括号内匹配成功的字符串

例如 定义一个密码的正则表达式:
规定: 英文字母开头,可以包括有数字、大小写、下划线、6-16位
password=’^ [a-zA-Z]{1}[a-zA-Z0-9]{5-15}$’

import re
用re模块提取
ret= re.findall([正则表达式],[被提取的字符串])
返回的类型是列表
首先定义一个pattern=‘<div class ="emall">(.*?)<div>’
re.findall(pattern,html) //html是之前读取的所有的字符串内容
如果有换行符号可以先进行替换,用 re.sub('\n','',html)
用re模块匹配
ret=re.match([正则表达式],[被匹配的字符串])
如果返回成功,返回结果是<class’re.match’>对象
password='^ [a-zA-Z]{1}[a-zA-Z0-9]{5-15}$'
pass1=‘123456’
pass1=‘k123456’
pass1=‘k456’
re.match(password,pass2)`
用re模块替换
ret=re.sub([正则表达式],[替换成的字符串],[被匹配的字符串])

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值