Esse é um desafio divertido e tal, mas é importante lembrar que as validações do front não significam muita coisa. Esse tipo de validação aplica "regras de negócio" que podem ser facilmente burladas, uma vez que todo o código é baixado no dispositivo do cliente e pode ser alterado. Ainda, a conexão com a API pode ser feita de uma forma direta, bastando passar dados que seriam barrados pelo front.
A validação por regex é via de regra uma ótima pedida, e acho que o seu sistema ficou bem legal, mas é importante sempre lembrar que as reais validações devem ocorrer no backend, onde ninguem pode meter a mão.