首页 > 解决方案 > 如何在asp.net C#中按字母顺序对由逗号等特殊字符分隔的字符串进行排序

问题描述

在 C# 中,如何对以特殊字符分隔的字符串进行排序,例如“,”

例如我有这样的字符串

string sStates="IA,KY,CT,ME,AZ";

我怎样才能按字母顺序重新排序它们

"AZ,CT,IA,KY"

将它们拆分为一个数组将起作用。

但是有没有更有效的方法?

提前感谢您的帮助。

标签: c#stringlinq

解决方案


这可以使用 linq 在一行代码中完成:

var result = string.Join(",", source.Split(",").OrderBy(s => s));

除非您在紧迫的时间线下为巨大的字符串(或大量的字符串)执行此操作,或者存在实际的性能问题,否则此处不应考虑效率方面的考虑。

可读代码比快速代码要好得多。

作为一项规则 -您应该为清晰而设计代码,而不是为了性能。编写代码,以尽可能最清晰的方式传达它正在实现的算法。设定性能目标并根据它们衡量代码的性能。如果您的代码无法达到您的性能目标,请找出瓶颈并加以处理。设计代码时,不要在纳米优化上浪费时间。


推荐阅读