Regan è nato a Swansea il 16 maggio 1965, figlio di immigrati irlandesi. Da giovane si trasferisce in Irlanda con i suoi genitori, per poi tornare in Gran Bretagna e frequentare il College di St Joseph, a Ipswich nel Suffolk.
Regan al suo attivo ha più di 15 ruoli teatrali, ma è meglio conosciuto per i film 300, in cui ha interpretato il capitano, Troy, dove ha interpretato Eudoro, luogotenente di Achille, e Scontro tra titani, in cui interpretava il re Cefeo.
Regan è anche sceneggiatore e regista. Nel 1999 ha ricevuto una candidatura come miglior attore irlandese per il suo ruolo da co-protagonista nella miniserie Eureka Street.
Vita privata
Dalla sua relazione con Alexandra Pell, ha avuto una figlia, Chloe (nata nel 1991). Nel 2001 ha sposato l'attrice Amelia Curtis, e hanno due figli, Esme (nata nel 2007) e Maximilian (nato nel 2012).