问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

正则表达式中,量词的贪婪模式与惰性模式有什么区别

发布网友 发布时间:2022-04-18 05:57

我来回答

2个回答

懂视网 时间:2022-04-18 10:18

正则表达式并不是Python独有的,而是一套独立的语法,很多编程语言都支持。不同语言中使用的正则表达式语法并不完全一样,但大体都是类似的。本文重点介绍一下贪心模式和非贪心模式的用法和区别。在默认情况下,正则表达式是按照贪心模式去匹配的,也就是去匹配能够匹配到的尽可能多的内容。例如:

640?wx_fmt=png&wxfrom=5&wx_lazy=1

在上面的代码中,正则表达式中第一个表示匹配单词头,后面还有个字母b,表示匹配以字母b开头的单词,后面一个圆点.表示匹配任意字符(包括空格),然后加号+表示前面的任意字符出现一次或多次,最后一个表示匹配单词尾。那么问题来了,什么算是单词尾呢?空白字符和标点符号都算单词尾,但是正则表达式默认使用贪心模式,也就是匹配尽可能多的内容,所以上面的代码匹配到的文本中最后一个单词尾。如图:

640?wx_fmt=png&wxfrom=5&wx_lazy=1

那如何才能只匹配以字母b开始的单词而不是像上面这样子呢?可以使用非贪心模式。非贪心模式是使用问号“?”完成的,在正则表达式中,如果问号前面是普通字符或子模式,表示问号前面的字符或子模式可以出现也可以不出现。但是如果问号紧跟在+、*和{m,n}这样的内容后面,则表示非贪心模式,也就是匹配尽可能少的内容。以上面的问题为例,改为非贪心模式,例如:

640?wx_fmt=png

下面的代码进一步演示了贪心模式和非贪心模式的区别:

640?wx_fmt=png

当然,回到本文最初的问题,如果只是为了匹配以字母b开始的单词,是不用这么麻烦,直接使用w就好了,因为w只能匹配字母、数字或下划线,而不能匹配空格。例如:

640?wx_fmt=png

相关推荐:

热心网友 时间:2022-04-18 07:26

贪婪模式尽可能多的匹配
惰性模式尽可能少的匹配
如字符串"abbbbc"c贪婪模式 "[ab]+b"匹配字符串“abbbb",惰性模式正则"[ab]+?b"匹配字符串”ab"
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
找专业防水队做完还漏水怎么维权 法院会受理房屋漏水造成的纠纷吗? 巴西龟最长活多久,家养!!! 养胃的药最好的是什么啊 婴儿积食发烧不愿吃药怎么办 板门穴位在哪个部位 手机设置放偷看的方法? 凝结水回收器生产厂家? 个人账户养老金预测公式:现有5万元,缴费20年,能领多少钱? 临沂比较有名的男装品牌 支付宝603的信誉积分,第一次开通花呗能借多少钱? 百分之98的酒精在家中如何保存没有危险? 西红柿黄瓜疙瘩汤怎么做好吃,西红柿黄瓜疙 国际汉语教师资格证报名网址 正则表达式中/a+/与/a+?/的区别是? 贪婪重复与非贪婪重复的区别又是什么? 一键转发微信添加银行卡老是闪退是什么原因 女人应该怎么选内衣啊 iphone6微信怎么老是闪退啊登不上去。只要用我的号就不行。这是什么情况啊! 20岁女生最好不穿内衣,从这个角度看,那是否20岁女生穿略有空杯的内衣比较好呢? 女人:为什么你穿的内衣,总是空杯 为什么我的手机上微信绑定银行卡会闪退 女性文胸,到底应该怎么选择? 为什么微信绑定银行卡时候填到城市那一项时就自动闪退呢?求问?微信绑定银行卡闪退原因 人躺着的时候胸罩为什么是空杯女生回答,男生勿扰 苹果手机微信添加银行卡会闪退什么原因 女生说为什么还送一个空杯?怎么回答 吃剩下的半颗药第二天还能吃吗? 女生内衣空杯是因为胸部小吗 弯腰空杯算不算空杯 博美幼犬的驱虫药吃剩的半粒可以封装冷冻起来下次使用吗 头低得太久了,脖子老是痛怎么办? 老是低着头,脖子酸痛,怎么办?谢谢! 低着头总是脖子疼,是不是颈椎病?我去医院了,那个医生也没说什么,只是让我多抬头就好。可是现在我该怎 一直低着头工作,脖子好痛,怎么缓解 我现在头一低脖子都疼不敢动怎么办 睡觉落枕,头低下去脖子酸怎么办? 南康办摩托车驾驶证的在哪里 急求。南康市东山摩托车考驾驶证问题。 在赣州考摩托车驾照去哪个车管所 南康哪个驾校考摩托车驾照好?学费多少? 南康摩托车驾驶证好拿吗 牌照好上吗? 2个加起来 大概多少钱 膝盖贴着黑膏药十天结果黑色素侵入皮肤里出不来我该怎么办,还能出来吗?真的好难看 python中如何使用正则表达式的非贪婪模式示例 脚骨有点骨裂医生也没给上石膏只贴了贴黑膏药说十天换一次那么几天可以下地呢 祖传秘方黑膏药疗效好,怎么能给他推销出去,有专利,一贴能贴10天,怎么找销路 淄博田氏骨伤医院怎么样?贴膏药如何? 脚踝扭伤肿了,但是不疼,能训练吗 《无悔最后这一生》txt下载在线阅读全文,求百度网盘云资源 捡漏这篇小说结局如何 对于对方的口头人身威胁该怎么办?