Cita: Ah, y además me pondré a estudiar sort (y lo que ello conlleva, creo que expresiones regulares)...
no, para usar sort no conlleva expresiones regulares. simplemente ahí lo utilicé porque me parecio más cómodo. en su lugar, pude haber utilizado substr tal como lo tienes en el código inicial. lo único que realmente requieres saber de sort es que le pasas una función como argumento. dicha función recibirá dos argumentos que serán dados por sort. si un elemento debe ir antes que otro, entonces la función tiene que devolver un número negativo. de forma similar, si un elemento debe ir después que otro, la función tiene que devolver un número positivo. si ambos elementos poseen el mismo valor, es decir no va antes ni después, la función debe devolver cero.