1. 程式人生 > >js 正則的貪婪性與懶惰性匹配

js 正則的貪婪性與懶惰性匹配

使用正則匹配時,當我們某個字串有多個相同的字元時,我們會發現匹配到了最長的一個符合的字串,例如:

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呢,此時就要用到正則的懶惰模式,用法很簡單,就是在中間值的 後面 加?

一個問號只差,結果卻大不相同。