Bonjour à tous , je seche sur la récupération issue d'un regex

Ma chaine en entrée :

Nom et al., 1998a , 1987b et AAAAa
Nom et Nom2, AAAAa , AAAAa et AAAAa
Nom and Nom2, AAAAa , AAAAa And AAAAa

je dois récupérer le motif Nom et xxx
ainsi que chaque itération de AAAAa

ma patern :

regEx.Pattern = "(\()?(\w+)\s*,*((et|and)\s+(al\.|\w+))?((,|\sand|\set)\s(\d{4}\w?))+(\))?"


je lance le regEx.Execute sur ma chaine
exemple

regEx.Execute("Moi et Toi, 1998, 2000a and 2002")

Quand j'essais de récupérer les SubMatch
j'arrive bien a récupérer Moi et toi et 2002 .. les 2 autres années ne sont pas récupérables .

Help !