您当前的位置: 首页 >  Python

潇洒白羊

暂无认证

  • 2浏览

    0关注

    68博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

稳扎稳打学爬虫05—python中re模块的使用

潇洒白羊 发布时间:2022-02-03 22:32:53 ,浏览量:2

python程序中运用re模块,使用正则

1、findall 查找所有,返回list
str = "你要是没有什么事情,就一起打游戏吧,玩游戏,放松一下嘛"
lst = re.findall('游戏',str)
print(lst)

在这里插入图片描述 在这里插入图片描述

2、search 会进行匹配,如果匹配到了第一个就返回这个结果
lst = re.search('我',"我的电话我要你记住哟,100233,235242001")
print(lst.group())

在这里插入图片描述

3、match 只能从字符串的开头进行匹配
lst = re.match('我的',"我的电话你要记住哟,100233,235242001")
print(lst.group())

在这里插入图片描述

4、finditer 和 findall 差不多,只不过这时返回的是迭代器
str = "你要是没有什么事情,就一起打游戏吧,玩游戏,放松一下嘛"
lst = re.finditer('游戏',str)
for i in lst:
    print(i.group())

在这里插入图片描述

5、compile()可以将一个长长的正则进行预加载,方便后期使用
obj = re.compile('\d{3}')  #将正则表达式编译成为一个正则表达式对象,规则是:要匹配连续的3个数字
ret = obj.findall('嘻嘻哈哈1120,嗯嗯111,怕怕223') #正则表达式对象调用search,参数为待匹配的字符串
print(ret)
若想单独获得正则中的具体内容:分组,起名字
s = """
简笔画
征文主题
联系电话
""" obj = re.compile("
(?P.*?)
",re.S) #re.S 可以让.匹配任何东西 result = obj.finditer(s) for it in result: # print(it.group()) print(it.group("class")) print(it.group("id")) print(it.group("name"))

在这里插入图片描述

关注
打赏
1655040589
查看更多评论
立即登录/注册

微信扫码登录

0.0477s