如何按字符串描述的顺序对列表<string>进行排序

Sil*_*ght 2 c# sorting string list

我有一个这样的列表:

List<string> list_lines = new List<string>();
list_lines.add("name1__pass1__com__14__55");
list_lines.add("name2__pass2__com__14__5445");
list_lines.add("name3__pass3__com__14__456456");
list_lines.add("name4__pass4__com__14__1357");
list_lines.add("name5__pass5__com__14__20000");
list_lines.add("name6__pass6__com__14__25");
list_lines.add("name7__pass7__com__14__12");
Run Code Online (Sandbox Code Playgroud)

和更多...

如你所见,这里有一个分隔符 - >"__"在该列表中的每个字符串中.
意思 :

string[] Separator = new string[] { "__" };   

foreach(string s in list_lines)
{
    string[] line_ar = s.Split(Separator, StringSplitOptions.None);
    int Num  = int.parse(line_ar[4]);
}
Run Code Online (Sandbox Code Playgroud)

我想按该列表的Num部分对该列表进行排序.
我使用StackOverflow测试一些方法,但是它们中存在一个大错误列表.

非常感谢能帮我把它扔掉

Die*_*ego 9

ASC:

list_lines = list_lines.OrderBy(s => int.Parse(s.Split(Separator, StringSplitOptions.None)[4])).ToList();
Run Code Online (Sandbox Code Playgroud)

说明:

list_lines = list_lines.OrderByDescending(s => int.Parse(s.Split(Separator, StringSplitOptions.None)[4])).ToList();
Run Code Online (Sandbox Code Playgroud)