js 正则的贪婪性与懒惰性匹配

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/A_one2010/article/details/83343987

使用正则匹配时,当我们某个字符串有多个相同的字符时,我们会发现匹配到了最长的一个符合的字符串,例如:

http://www.baidu.com/gogle.com/index.html 此时我们想要匹配的是百度的域名  http://www.baidu.com

正则该怎么写呢? /^http(\S)*\.com/   思路是以http开头,匹配到 .com 

那么结果呢,我们发现匹配到了 http://www.baidu.com/google.com,并不是我们要的结果

这就是因为正则的贪婪性导致的,匹配到了最大的一个符合的字符,那么我们该如何匹配 http://www.baidu.com呢,此时就要用到正则的懒惰模式,用法很简单,就是在中间值的 后面 加?

一个问号只差,结果却大不相同。

猜你喜欢

转载自blog.csdn.net/A_one2010/article/details/83343987