Imr*_*hid 5 .net c# linq arrays sorting
我试图用逗号分割字符串.但它没有像预期的那样表现
var classes = "10,7,8,9";
Console.Write(string.Join(",", classes.Split(',').OrderBy(x => x)));
Console.ReadKey();
Run Code Online (Sandbox Code Playgroud)
和输出是
10,7,8,9
但我希望预期的输出如下:
7,8,9,10
类可以包含一个部分.像7a,7b
我想在一行代码上实现它.
你可以像这样使用正则表达式
var classes = "10,7,8,9";
Regex number = new Regex(@"^\d+");
Console.Write(string.Join(",", classes.Split(',').OrderBy(x => Convert.ToInt32(number.Match(x).Value)).ThenBy(x => number.Replace(x, ""))));
Console.ReadKey();
Run Code Online (Sandbox Code Playgroud)