This is a great question. Thanks for sharing. Even I got confused a little 😃
But going through this awesome article the purpose of '?' as lazy quantifier became crystal clear 👌
This article explains very clearly how the use '?' after other identifiers like '* 'or in your case '+' makes it lazy and hence able to find multiple matches.
I am off to my favorite regex playground to play with this myself.