博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python正则表达式初识(四)
阅读量:6605 次
发布时间:2019-06-24

本文共 870 字,大约阅读时间需要 2 分钟。

今天继续给大家分享Python正则表达式基础知识,主要给大家介绍一下特殊字符“{}”的用法,具体的教程如下。

特殊字符“{}”实质上也是一个限定词的用法,其限定前面字符所出现的次数,其常用的模式有三种,分别是“{数字}”、“{数字,}”和“{数字1, 数字2}”。举个例子,如“{1}”、“{1,}”和“{1, 3}”。到这里可能大家还不是很清楚,下面依次通过实例来演示一下,加深对特殊字符“{}”的理解。

1、如下图所示,限定字符p前面的字符出现1次,则根据贪婪匹配模式,pap成功匹配到。

2、如果将匹配模式更改为“.*(p.{2}p).*”,则无任何的输出,如下图所示,因为此时并没有任何的字字符串符合匹配条件。

3、相应的,我们将原始字符串做一下更改,如下图所示,此时“.*(p.{2}p).*”匹配模式有对应的结果,如下图所示。

4、特殊字符“{1,}”代表的是前面的字符出现1次及以上;特殊字符“{2,}”代表的是前面的字符出现2次及以上;特殊字符“{3,}”代表的是前面的字符出现3次及以上;以此类推。举个栗子,如下图所示。

我们要匹配出现p字符前面出现3次及以上的次数,此时子字符串phhhhp被提取出来,但是pap和paap都没有提取到,因为其不满足匹配条件。

5、特殊字符“{1, 3}” 代表的是前面的字符至少出现1次,最多出现3次;特殊字符“{2, 5}” 代表的是前面的字符至少出现2次,最多出现5次;以此类推。举个栗子,如下图所示。

当使用特殊字符“{1, 3}”的时候,如下图所示:

贪婪模式下,字符串从右边开始往左取,首先遇到相对满足条件的子字符串是phhhhp,但是并不符合规则,因为该子字符串出现的次数为4次,而限定条件为1次到3次,所以这个子字符串不符合匹配条件,尔后继续往前匹配,得到匹配结果paap,满足匹配条件。

6、同理,当使用特殊字符“{3, 5}”的时候,如下图所示:

根据上一步的分析可以得知,该匹配结果为phhhhp。

小伙伴们,关于正则表达式特殊字符“{}”的用法,你们get到了吗?

转载地址:http://ewbso.baihongyu.com/

你可能感兴趣的文章
loadrunner之录制下载文件
查看>>
Cacti模板
查看>>
Delete a failed Domain Controller object from Active Directory
查看>>
7-19
查看>>
[AWS vs Azure] 云计算里AWS和Azure的探究(1)
查看>>
两张图看懂原型链
查看>>
我的友情链接
查看>>
mysql教学课件
查看>>
OA办公系统设计的7大原则
查看>>
[转]U-BOOT内存布局及启动过程浅析
查看>>
RabbitMQ的几种典型使用场景
查看>>
MySQL性能优化之参数配置
查看>>
prepareStatement的用法和解释
查看>>
[转载] A goal deliberation strategy for BDI agent systems
查看>>
java 时间简单电话簿 初学者入门
查看>>
Python线程与进程的区别
查看>>
TCP之backlog
查看>>
nagios监控mysql
查看>>
Linux C代码实现cgi shell
查看>>
Learning Android(第一季)01-Android平台一日游
查看>>