Python基础知识之二: 正则表达式常用功能细解!

其实正则在我的爬虫中已经用的不是很多了,用xpath的网页标签去找内容,容易理解也方便多了,但是不用正则不是因为有更好的方法,而是正则用的好用的精通很难,比如各种符号对应的方法等等,今天就把经常用的一些正则简单说说,除了一些特殊的,基本就够用了。

image

正则介绍

正则表达式并不是Python的一部分。正则表达式是用于处理字符串的强大工具,拥有自己独特的语法以及一个独立的处理引擎,效率上可能不如str自带的方法,但功能十分强大。得益于这一点,在提供了正则表达式的语言里,正则表达式的语法都是一样的,区别只在于不同的编程语言实现支持的语法数量不同;但不用担心,不被支持的语法通常是不常用的部分。如果已经在其他语言里使用过正则表达式,只需要简单看一看就可以上手了。

以上是复制网上一段,简单的说,就是它在各种语言中都存在,有自己的语法,功能非常强大,等等。

正则模块在python里面需要安装一下,cmd下输入命令:pip install re即可。使用时 import re

欢迎大家来和我一起讨论、交流的哦!

干货:findall的几种常用方法

image

这段代码意思是,在a变量中查找所有ui,以列表形式赋值给b。应用于计算字符出现次数。

image

加了个符号**^表示判断如果是ss开头则返回ss****,否则返回空列表**

image

当然也有判断结尾字符的,用**$**标识

image

**[]**内字符分别和后面字符组合匹配,返回所有的匹配内容

image

这里用**.代替任意字符,即可匹配字符串内v和前面的1****个字符**

image

‘d’用来匹配0-9内的1个数字返回,用’\’转义,注意是返回一个数字,比如上方的12**,返回的是****’1’,’2’**

image

当然解决办法也有,用2**’\d’即可了,**想匹配几位就用几个

image

**‘d’是匹配数字,’D’**表示除了数字都匹配,包括符号

image

‘w’ 在正则里面代表匹配从小写a到z,大写A到Z,数字0到9包含前面这三种情况,如上图

image

‘W’大写的话,就正好相反,匹配数字、字母之外的内容

以上2种情况都是匹配1个字符,如果要多个有2种方式,如下:

image

这是3个字符的

image

这是多个字符直到不在符合为止

**以下是今天的重点了,也是我最经常用的匹配方式,**划重点!

image

这里括号()的用法表示匹配是取括号内里面的内容,这里.*是正则贪婪匹配语法,也就是尽可能多的匹配

image

加个?就变成非贪婪匹配,也就是最小范围匹配了

image

这里,在最后加个re.I(i的大写),即忽略大小写

image

还一种情况是存在换行符(\n)的情况,加上re.S(大写s),即可匹配忽略换行符,也就是多行匹配了!

以上几种情况(特别是最后4种)掌握了,那基本可以搞定70%或者以上的情况,其他的方式还有很多(我都不怎么常用),就不一一举例了,大家有兴趣可以自行学习哦!

今天的分享就先到这里了喜欢就点个赞呗

image

欢迎大家来和我一起讨论、交流的哦!

如果真的遇到好的同事,那算你走运,加油,抓紧学到手。
python资源分享企鹅圈:1055012877
包含python,爬虫等人工智能软件,以及网络安全、数据挖掘、python web等python技巧的制作方法。
打造从零基础到项目开发上手实战全方位解析!

点击加入

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值