Regex Problema Nombre del grupo ¿Redefinición?

Entonces tengo esta expresión regular:

(^(\s+)?(?P<NAME>(\w)(\d{7}))((01f\.foo)|(\.bar|\.goo\.moo\.roo))$|(^(\s+)?(?P<NAME2>R1_\d{6}_\d{6}_)((01f\.foo)|(\.bar|\.goo\.moo\.roo))$))

Ahora si intento hacer un partido contra esto:

B048661501f.foo

Me sale este error:

  File "C:\Python25\lib\re.py", line 188, in compile
    return _compile(pattern, flags)
  File "C:\Python25\lib\re.py", line 241, in _compile
    raise error, v # invalid expression
sre_constants.error: redefinition of group name 'NAME' as group 9; was group 3

Si no puedo definir el mismo grupo dos veces en la misma expresión regex para dos casos diferentes, ¿qué debo hacer?

Respuestas a la pregunta(2)

Su respuesta a la pregunta