Prawidłowe sortowanie nazw z numerami
Aby sortować nazwy przedmiotów, chcę poprawnie obsługiwać numery. to znaczy:
1 Hamlet
2 Ophelia
...
10 Laertes
zamiast
1 Hamlet
10 Laertes
2 Ophelia
...
Czy ktoś wie o funktorze porównawczym, który już to obsługuje?
(tj. predykat, który można przekazaćstd::sort
)
Zasadniczo mam dwa wzorce do obsługi: Numer wiodący (jak wyżej) i numer na końcu, podobny do eksploratora:
Dolly
Dolly (2)
Dolly (3)
(Myślę, że mógłbym to rozpracować: porównać według znaków i traktować wartości numeryczne w inny sposób. Jednak to prawdopodobnie złamałoby kolizję Unicode i cokolwiek)