Разделение строки на каждого персонажа - PullRequest
0 голосов
/ 19 июня 2011

скажем, у меня есть строка "привет мир".Я хотел бы закончить с "dehllloorw".Поскольку я не нашел готового решения, я подумал: я могу разбить строку на массив символов, отсортировать ее и преобразовать обратно в строку.

В Perl я могу сделать s//, но в.Net Я должен был бы сделать .Split(), но нет перегрузки без параметров ... если я сделаю .Split(null), он, кажется, будет разделен на пробелы и .Split('') не скомпилируется.

какя делаю это (я ненавижу запускать цикл!)?

Ответы [ 3 ]

4 голосов
/ 19 июня 2011

Array.Sort("hello world".ToCharArray());

Ниже приведено краткое демонстрационное приложение консоли

    class Program
    {
        static void Main(string[] args)
        {

            var array = "hello world".ToCharArray();

            Array.Sort(array);

            Console.WriteLine(new String(array));
            Console.ReadLine();
        }
    }
3 голосов
/ 19 июня 2011

Символы в строке могут использоваться непосредственно, класс строки представляет их как перечисление - объедините это с Linq / OrderBy, и у вас будет одна строка для создания упорядоченной выходной строки:

string myString = "hello world";
string output = new string(myString.OrderBy(x => x).ToArray()); // dehllloorw
2 голосов
/ 19 июня 2011

Вы всегда можете сделать это:

private static string SortStringCharacters(string value)
{
    if (value == null)
        return null;
    return new string(value.ToList().Sort().ToArray());
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...