Olá pessoal, o meu primeiro regex ficou parecido com a resposta do professor, porem eu utilizei dois pipe (|) e quando eu testei usando outros emails eu encontrei alguns bugs.
^([a-z.]{5,14}\d|[a-z.]{5,15})@(?:caelum.com.br|alura.com.br)Os erros encontrados são: 1- Se o nome do usuário tiver mais de 15 caracteres o regex funciona, mas o resultado não sai corretamente, precisamos usar o ^ para forçar o começo do match e assim obter o resultado correto; 2- Depois do @ temos que escape o ponto \. pois queremos o ponto literal e não o meta-char any . desse modo se o usarmos a virgula no email ,com,br o regex não achará nenhum resultado; 3- No nome do usuário o primeiro caractere não pode ser o . porque não existe email que comece com um ponto. Segue meu regex com essas 3 correções:
(^[a-z][a-z.]{3,13}[a-z\d])@(?:caelum|alura)\.com\.br