私はこのようなリストがあります:私はl.Sort(呼び出す場合数値文字列のリストをソート(1,2、...、9,10の代わりに、1,10,2)
var l = new List<string> {"bla 1.txt","bla 2.txt","bla 10.txt","bla 3.txt"};
を)、リストは純粋な文字列の観点からは意味をなさないが、User Perspectiveからは吸うという順序で並べ替えられます(1,10,2,3)。
ユーザーに01,02,03の名前を付けることを強制したくない/できないので...組み込みの方法や数字を正しく検出して並べ替える簡単なアルゴリズムがあるのだろうか私は1,2,3,10を持っていますか?数字は長さが1〜2文字(つまり99以下)なので、1桁の数字に0とソートを一時的に付加する正規表現を行うこともできますが、 ?
.NET 3.5SP1ことが重要ならば、ない4.0
関連性があります。http://stackoverflow.com/questions/1022203/sorting-strings-containing-numbers-in-a-user-friendly-way – VoodooChild
重複したhttp://stackoverflow.com/ q/248603/24874 –