Egentligen enligt dokumentationen,
Om det finns ett index för fältet, matchar MongoDB det reguljära uttrycket mot värdena i indexet, vilket kan vara snabbare än en samlingssökning. Ytterligare optimering kan ske om det reguljära uttrycket är ett "prefixuttryck", vilket innebär att alla potentiella matchningar börjar med samma sträng. Detta tillåter MongoDB att konstruera ett "intervall" från det prefixet och endast matcha mot de värden från indexet som faller inom det intervallet.
http://docs.mongodb.org/manual/reference/operator/query/regex/#index-use
Med andra ord:
För /Jon Skeet/
regex ,mongo kommer att fullskanna nycklarna i indexet och sedan hämta de matchade dokumenten, vilket kan vara snabbare än samlingsskanningen.
För /^Jon Skeet/
regex ,mongo kommer endast att skanna intervallet som börjar med regex i indexet, vilket kommer att vara snabbare.