regex_非贪婪模式

overview

对于’*’, ‘+’,和 ‘?’ 修饰符都是 贪婪的;
它们在字符串进行尽可能多的匹配。有时候并不需要这种行为,及对应的非贪婪模式

贪婪模式的工作过程

以字符串abcbd作为被匹配串
a[bcd]*b作为正则模式串
在这里插入图片描述

非贪婪模式包括:

*?, +?, ??,{m,n}?

实例

*?

在这里插入图片描述

对应的贪婪模式:*

在这里插入图片描述

+?

在这里插入图片描述

对应的贪婪模式:+

在这里插入图片描述

??

在这里插入图片描述

对应的贪婪模式:?

在这里插入图片描述

{m,n}?

前一个修饰符的非贪婪模式,只匹配尽量少的字符次数。
比如,对于 ‘aaaaaa’, a{3,5} 匹配 5个 ‘a’ ,
而 a{3,5}? 只匹配3个 ‘a’。

posted @ 2024-06-11 09:55  xuchaoxin1375  阅读(19)  评论(0)    收藏  举报  来源