读书人

前面一个单词后面是该词对应数字按照

发布时间: 2012-08-10 12:19:33 作者: rapoo

前面一个单词后面是该词对应数字,按照数字大小如何排序
AA:12;BB:18;CC:111;DD:23;EE:45;FFF:2;

排序的结果应该为:CC:111;EE:45;DD:23;BB:18;AA:12;FFF:2;

问用C#如何输出该结果?

[解决办法]
1.你可以用正表式也可以找到。
2.你的字串用.Split拆成字串列,之後去比其大小,生新的字串列然後用一圈字串列加起就行了。
[解决办法]

C# code
string str="AA:12;BB:18;CC:111;DD:23;EE:45;FFF:2;";            Console.Write(string.Join(";", str.Split(new char[]{';'},StringSplitOptions.RemoveEmptyEntries).OrderByDescending(x => int.Parse(x.Split(':')[1])).ToList()));            Console.Read();
[解决办法]
探讨

不行啊!运行出错!

[解决办法]
先按照“;”拆分,然后每个拆分后的字符串再按照“:”拆分啊,按照数字排就是了
[解决办法]
C# code
string str = "AA:12;BB:18;CC:111;DD:23;EE:45;FFF:2";string[] arr = str.Split(';');Array.Sort(arr, (v1, v2) => int.Parse(v1.Split(':')[1]).CompareTo(int.Parse(v2.Split(':')[1])));str = string.Join(";", arr); 

读书人网 >C#

热点推荐