例如:
Li, si;Zhang, san;Wang, wu;Zhao, liu;An, jing
最后的效果是:
按照L Z W Z A字母排序成 An, jing;Li, si;Wang, wu;Zhao, liu;Zhang, san
只按首字母排序就行,后面的字母不管,相同的首字母自然排序就行或者有方法能按第二,第三,第四个字母排序
谢谢
------解决思路----------------------
通过 分号 分割成数组或者添加List中,使用linq 排序。
------解决思路----------------------
Console.WriteLine(string.Join(";", "Li, si;Zhang, san;Wang, wu;Zhao, liu;An, jing".Split(';').OrderBy(x => x.ToUpper())));
------解决思路----------------------
通过 分号 分割成数组或者添加List中,使用linq 排序。
var result = ("Li, si;Zhang, san;Wang, wu;Zhao, liu;An, jing").Split(';').OrderBy(p=>p).ToList();
------解决思路----------------------
var result2 = str.Split(';').OrderBy(x => x, StringComparer.OrdinalIgnoreCase);
比较字符串尽量不要用ToUpper或ToLower,会生成副本
------解决思路----------------------
string names = "Li, si;Zhang, san;Wang, wu;Zhao, liu;An, jing";
List<string> nameList = names.Split(';').OrderBy(name => name).ToList();
------解决思路----------------------
想要怎样输出先?
str.Split(';').OrderBy(p => p).ToList().ForEach(p => {
Console.WriteLine(p);
});
------解决思路----------------------
Array.Sort()即可
foreach(var v in Array.Sort(str.Split(';')){
Console.WriteLine(v);
}
------解决思路----------------------
我的思路也是:按符号分割,比如空格 逗号。然后返回的数组加到集合中,集合中有排序的方法