1 A felnőtt klubokban játszott mérkőzések és gólok csak a bajnoki mérkőzések adatait tartalmazzák. Utolsó elszámolt mérkőzés dátuma: 2020. augusztus 1.
McGregor 1998. július 14-én került a Rangers ifiakadémiájára.[2] Egy kartörés miatt csaknem egy évet ki kellett hagynia, ami lelassította a fejlődését,[3] de visszatérése után állandó tagja lett a tartalékcsapatnak. Az első csapatban 2002 februárjában, egy Forfar Athletic elleni kupameccsen kapott először lehetőséget,[4] majd később, az Aberdeen ellen a bajnokságban is bemutatkozhatott.[5]
A 2005/06-os szezonra a Rangers Klost és Waterreust is megtartotta, így McGregor csak a harmadik számú kapus volt a csapatban.[10] A helyzetet kihasználva a Dunfermline Athletic a teljes idényre kölcsönvette.[10][11] Egy Kilmarnock elleni 3-2-re elvesztett mérkőzésen debütált a klubnál. Pályaára lépett a 2006-os Skót Ligakupa-döntőn is, ahol csapata kikapott a Celtic ellen. Minden sorozatot egybevéve 31-szer védhetett, ebből hétszer nem kapott gólt. Az idény végén a csapat menedzsere, Jim Leishman azt mondta, nagy szerepe volt abban, hogy a csapat kupadöntőt játszhatott, illetve, hogy a bajnokságban 1-0-ra legyőzte a Celticet.[10]
A következő szezonban Paul Le Guen lett a Rangers vezetőedzője, de McGregor továbbra is csak a harmadik számú hálóőr volt, Stefan Klos és Lionel Letizi mögött.[12] Klos a felkészülési időszakban egy kerékpárbalesetben megsérült,[13] majd Letizit is sérülés érte, így a Kilmarnock elleni bajnokin McGregor védhetett.[14] A Molde elleni UEFA-kupa selejtezőmeccs után megválasztották a találkozó legjobbjának.[15]2006 szeptemberében megválasztották a hónap legjobbjának a skót élvonalban,[16] majd új szerződést is kapott csapatától.[17] Jó teljesítménye ellenére Letizi felépülése után kikerült a kezdőcsapatból,[15] de a francia újabb sérülését követően megszilárdította helyét a csapatban.[18] A szezon végén csapattársai megválasztották a szezon legjobbjának, 2007 szeptemberében pedig új, négy évre szóló szerződést kapott a kék mezesektől.[19]
A következő évadban is sikerült megtartania helyét a csapatban, Roy Carroll leigazolása ellenére is.[20][21]2008 márciusában lejátszotta 100. bajnokiját a Rangers színeiben, a Hibernian ellen.[22] Csapata bejutott a Skót Ligakupa döntőjébe, ahol tizenegyespárbaj döntött. McGregor két tizenegyest hárított, ezzel győzelemhez segítve csapatát.[23] A Celtic elleni rangadón 1-1-es állásnál, sérülten kivédett egy büntetőt, de röviddel utána le kellett cserélni és a szezonban nem játszhatott többet,[24] így a Skót Kupa döntőjét és az UEFA-kupa-döntőt is ki kellett hagynia.[25]
A következő idényben McGregor visszaszerezte helyét a kezdőcsapatban,[32][33]Alexander csupán a Ligakupában volt állandó résztvevő.[33][34] McGregord az idény során a kupát és a bajnokságot is megnyerte csapatával. 2010 októberében egymeccses eltiltást rótt ki rá a Skót labdarúgó-szövetség, amiért az Aberdeen játékosa, Chris Maguire felé rúgott, bár fizikai kontaktus nem történt.[35]2011. július 4-én új, hatéves szerződést írt alá a Rangersszel.[36] A 2011/12-es szezon első kilenc meccsén mindössze egy gólt kapott.[37] A Celtic elleni rangadón, az első félidő végén komoly hibát követett el, ami miatt az ellenfél 2-1-es előnnyel zárta a játékrészt, a Rangers azonban később fordítani tudott és 4-2-re győzött.[38]2012 júniusában McGregor tiltakozott az ellen, hogy szerződése a Rangerstől az azt működtető új vállalathoz kerüljön.[39] A skót profi labdarúgók szövetsége korábban kijelentette, hogy a játékosuknak jogukban áll visszautasítani szerződésük áthelyezését és szabadon igazolhatóvá válni.[40]
2009. április 3-án eltiltották a válogatottbeli szerepléstől, miután több ponton is megsértette a nemzeti csapat magaviseleti szabályzatát. A 2009. március 28-i, Hollandia elleni vb-selejtező után a csapat hajnali négy órakor ért vissza a szállodába. George Burley szövetségi kapitány engedélyezte a játékosoknak, hogy megigyanak egy-egy italt a bárban, McGregor és Barry Ferguson azonban ebédidőig ott maradtak mulatni.[53] A médiában Boozegate néven elhíresült eset után mindkét játékos kikerült a következő, Izland elleni mérkőzés kezdő csapatából. A cserepadon ülő játékosok a mérkőzés során olyan gesztusokat tettek a kamerák előtt, ami után a Skót labdarúgó-szövetség úgy döntött, hogy a továbbiakban nem számít rájuk a válogatottban.[54]
McGregor később elnézést kért az esetért és klubja, a Rangers is kétheti fizetésmegvonást rótt ki rá.[55]2010 februárjában közel állt hozzá, hogy visszahívják a nemzeti csapatba, de egy este megtámadták Glasgow központjában, amikor hazafelé tartott, ezért Craig Levein úgy döntött, hogy kihagyja a keretből.[56] Végül 2010. augusztus 2-án, egy Svédország elleni találkozón térhetett vissza. Emlékezetet védései ellenére Skócia 3-0-ra kikapott.[57] McGregor made a number of important saves in the match to prevent a heavier defeat.[57]2010-ben McGregor a válogatott első számú kapusa lett az Európa-bajnoki selejtezőkön, Csehország ellen a meccs legjobbjának járó díjat is megkapta.[58]