优秀的编程知识分享平台

网站首页 > 技术文章 正文

Python第十节—爬虫前正则模块学习

nanyue 2024-12-27 15:44:51 技术文章 5 ℃

陆陆续续给大家讲了不少课,基础的内容可以关注小编,查看往期的内容,每期的内容不多,希望大家多多加油!

今天给大家讲的是Python中的爬虫内容,讲爬虫之前先给大家讲一下正则模块,正则表一般用来检索替换那些符合某些规则的文本,白话就是,你要查找A中的有没有“男孩”这个词,然后需要你自己在程序中设定规则(正则表达式)为“男孩”,然后利用正则模块来查找,或者某些英文语句,E-mail地址,命令或者你想搞定的东西

正则表达式是一段文本或者一个公式,由普通字符以及特殊字符组成的文字模式,它是用来描述某种特征,用某种特征去进行匹配

匹配 描述正则表达式动作的结果,给定一段文本或者字符串,使用正则表达式从文本或者字符串中查找符合正则表达式的字符串

字符匹配

—普通字符,例如a,b,c,d,e,f,g,h.......

—元字符,例如[ ] 常用来指定一个字符集:[abc];[a-z]

[^ ]指定不再区间范围内

^,匹配行首,它只能匹配字符串的开始

$,匹配行尾,

听不懂不要着急,且让小编给你举几个简单例子

1.先导入re模块,利用import re

2.输入一段内容s

3.输入正则表达式res=r‘ ’(加上r是为了和上面内容做区分,这里查找的元字符是com)

4.利用re.findall函数,查找

当用[]来指定一个字符集时,比如下面的例子,我要搜索出tap tqp,可以写成res=r‘t[aq]p',可以直接查找

如果res=r‘[h]’,意思就是查找s中是否存在含有h的字符串,有几个含有h就显示几个字符串

import re

s='hello world hello'

res=r'[h]'

print re.findall(res,s)

输出的是‘ h’,‘h’(因为s中有两个hello)

当利用$符号时,代表定位在尾部

import re

s='hilp halp hblp hclp hdlp hilp'

res=r'hilp

print re.findall(res,s)

输出只会输出一个hilp

当利用^时,只会定位在行首

import re

s='hilp halp hblp hclp hdlp hilp'

res=r'^hilp'

print re.findall(res,s)

只能输出行首一个‘hilp’



Tags:

最近发表
标签列表