0120(正则表达式)

 正则表达式(规则表达式)

就是通过字符串定义规则,从规则去验证字符串是否匹配。

python中的正则表达式

使用re模块,通过match,search,findall三个方法来匹配

1.re.match(匹配规则,被匹配的字符串)

匹配成功返回匹配对象,匹配不成功返回空

match匹配是开头进行匹配,如果开头没有匹配到,忽略后面的内容:

有返回值

返回值的意义:<re.Match object; span=(0, 4), match='rain'>

span表示的是匹配到的字符串下标为[0~4)这个范围

查看返回值用    变量名.group()     group只适用于search和match(他们两个返回的是对象)

findall不适用(返回的是列表)

2.search(匹配规则,被匹配字符串)

搜索整个字符串,找出匹配的。从前到后,找到第一个后就停止

3.findall(匹配规则,被匹配字符串)

输出一个列表

元字符匹配

.匹配任意1个字符(除了\n),\.匹配本身
[ ]匹配[ ]中列举的字符
\d             匹配数字0~9
\D匹配非数字
\s

匹配空白(空格,tab键)        

\S匹配非空白
\w匹配单词字符:a~z,A~Z,0~9,   _
\W匹配非单词字符


在转义字符前加r可以让转义字符\失效

数量匹配

*匹配前一个规则的字符出现0次至无数次
+匹配前一个规则的字符出现最少1次至无数次
匹配前一个规则的字符出现0次或最多1次
{m}匹配前一个规则的字符出现m次
{m,}匹配前一个规则的字符最少出现m次
{m,n}匹配前一个规则的字符出现m到n次

边界匹配

^匹配字符串开头
$ 匹配字符串结尾
\b匹配一个单词的边界
\B匹配非单词边界

分组匹配

|匹配左右任意一个表达式
()将括号中的字符作为一个分组

多用就能记住,多来查看!

0000 ff ff ff ff ff ff e0 d3 62 10 0f 79 08 00 45 00 ........b..y..E. 0010 01 48 6b 39 00 00 80 11 00 00 00 00 00 00 ff ff .Hk9............ 0020 ff ff 00 44 00 43 01 34 cd d6 01 01 06 00 7f 61 ...D.C.4.......a 0030 2e 3b 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .;.............. 0040 00 00 00 00 00 00 e0 d3 62 10 0f 79 00 00 00 00 ........b..y.... 0050 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 0060 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 0070 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 0080 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 0090 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00b0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00d0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 0100 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 0110 00 00 00 00 00 00 63 82 53 63 35 01 01 3d 07 01 ......c.Sc5..=.. 0120 e0 d3 62 10 0f 79 32 04 c0 a8 00 71 0c 0b 68 73 ..b..y2....q..hs 0130 79 31 38 30 39 36 35 32 31 3c 08 4d 53 46 54 20 y18096521<.MSFT 0140 35 2e 30 37 0e 01 03 06 0f 1f 21 2b 2c 2e 2f 77 5.07......!+,./w 0150 79 f9 fc ff 00 00 y..... 提取这个里面的十六进制字符串,前面的0000 0010 是行号,把行号也去掉
08-21
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

...Rain...

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值