У меня есть список вроде этого:
var l = new List<string> {"bla 1.txt","bla 2.txt","bla 10.txt","bla 3.txt"};
Если я вызываю l.Sort(), список сортируется в порядке 1,10,2,3, что имеет смысл с чистой строки точки зрения, но отстой из пользовательской перспективы.
Так как я не хочу/не могу заставить своих пользователей называть их 01, 02, 03,... Интересно, есть ли встроенный метод или простой алгоритм для обнаружения и сортировки чисел должным образом, так что у меня 1,2,3,10? Поскольку числа имеют длину всего 1 или 2 символа (т.е. Не более 99), я мог бы сделать регулярное выражение, которое временно префиксно всех 1-значных чисел с 0 и сортировкой, но прежде чем я изобретаю колесо, я задаюсь вопросом, что-то уже существует
.net 3.5SP1, если это важно, а не 4.0