懒惰匹配

2017-12-12 14:59:10
linefo
954
最后编辑:linefo 于 2017-12-12 17:34:02

要了解懒惰匹配,必须先了解贪婪匹配的含义


什么是贪婪匹配?先看下面这个例子

在上面的例子中,我们的本意是

找到 <b>text1</b> 和 <b>text2</b> 两个结果

但实际上,它匹配到了整行文本,因为+属于贪婪型元字符,满足条件的情况下,它会尽可能的匹配更长的文本


懒惰匹配

为了符合需要,我们要改造这个正则表达式,我们在+后面加一个“?,这样它就会变成懒惰匹配的模式


变成懒惰匹配模式以后,就会尽可能匹配更少的文本

*  的懒惰模式是 *?
+ 的懒惰模式是 +?
{n,}的懒惰模式是{n,}?