Loading... 贪婪与懒惰,本来就是一对反义词,很简单的理解就是,贪婪匹配就是尽可能多的匹配,懒惰匹配就是尽可能少的匹配。我们来看下面两个表达式。 `.*` 贪婪匹配 `.*?` 懒惰匹配 这两个匹配唯一的区别就是一个问号,前一个是尽可能多的匹配内容,后一个是尽可能少的匹配。 **举例:** **要求是匹配出所有中间的数字,使用小括号。** ```bash <li>1</li> <li>2</li> <li>3</li> <li>4</li> <li>5</li> ``` 如果我们这样写:`<li>([\s\S]*)</li>`,是为贪婪匹配,出来的结果就会尽可能的往后找,尽可能的多包含在一个结果之中,造成错误: ![zhengze13-1.jpg](http://static.fox-9.com/uploads/2021/08/09/zhengze13-1.jpg!webp) 所以我们应该使用懒惰匹配:`<li>([\s\S]*?)</li>`,最终结果: ![zhengze13-2.jpg](http://static.fox-9.com/uploads/2021/08/09/zhengze13-2.jpg!webp) --- 有的时候,贪婪匹配匹配到的范围过大,造成错误,所以需要加一个问号,使用懒惰匹配。问号可以加在表示数量的这些符号后面,比如 `*` 或者 `+` 等,大家可以自己尝试。 以下是我们的视频教程: **在线观看:** http://v.youku.com/v_show/id_XMjg4MDQ0NjY4NA==.html **高清源文件下载:** <div class="hideContent">该部分仅登录用户可见</div> 感谢大家的收看,我们下期再见! 最后修改:2021 年 08 月 09 日 © 允许规范转载 赞 赠人玫瑰,手留余香