Separar uma string com base em vogais e consoantes

Escreva uma função que retorne uma string com todas as suas vogais minúsculas primeiro e todos os demais caracteres depois. Preserve a ordem original dentro de cada grupo. Caracteres especiais, espaços e letras maiúsculas são tratados como caracteres que não são vogais.

Exemplos

split("abcde") ➞ "aebcd"

split("Hello!") ➞ "eoHll!"

split("What's the time?") ➞ "aeieWht's th tm?"

Observações

  • As vogais são a, e, i, o e u.
  • Para deixar o código mais claro, você pode usar uma função auxiliar para verificar se um caractere é uma vogal.