Odenar Cadenas con letras y números
Hola, estoy usando un TStrings y sé ordenarlo, el problema me surge en que este contiene números dentro de las cadenas, además no tienen por qué estar al principio de la cadena y puede o no contenerlos. No he encontrado solución para este caso particular.
Un ejemplo de cómo ordenaría es:
10 perro
3 casa
hola 200 lalala
hola 33 lalala
hola 4 adiós
Mientras que el orden correcto sería:
3 casa
10 perro
hola 4 adiós
hola 33 lalala
hola 200 lalala
(Disculpad por el ejemplo tan sumamente tonto e infantil, estoy espesito)
Lo que se me ha ocurrido es, al ordenar como ya lo hago, buscar la longitud máxima de los números de las dos cadenas y hacer que todos la tengan, poniendo 0s delante, pero no sé si esto sería muy ineficiente.
Os preguntaba por si hay alguna manera más eficiente, en caso contrario yo mismo construiré la función, ese no es el problema.
Saludos y gracias por vuestro tiempo.
|