我有一个List这样的:排序字符串列表数字(1,2,...,9,10代替1,10,2)
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
看起来相关,看看http://stackoverflow.com/questions/1022203/sorting-strings-containing-numbers-in-a-user-friendly-way – VoodooChild 2011-01-24 23:07:46
重复http://stackoverflow.com/ q/248603/24874 – 2016-12-15 14:46:07