Yo habia pensado en los autómatas porque pensaba en hacer algo como que tenga "inteligencia"... por ejemplo:
Código Delphi
[-]Si (estado = Vocal_A) and (palabra[i] In Consonantes)
then AgregarAlTexto(palabra[i])
Me explico?... pensaba en poner estados que me ayuden a determinar las reglas gramaticales a aplicar y en base a ello ordenar las letras del texto.