У меня есть список вроде этого:
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