Как найти в строке слово, в котором буквы идут последовательно по латинскому алфавиту - C#
Формулировка задачи:
Допустим дана строка: udhi uhidug uygd abc gutfyf abcde khgdfjg...
Выписать слова abc, abcde и так до конца алфавита с помощью юникода.
Но так, чтобы они начинались с A и заканчивались Z, а не в разброс.
Решение задачи: «Как найти в строке слово, в котором буквы идут последовательно по латинскому алфавиту»
textual
Листинг программы
static bool HasAlphabeticalOrder(string text) { text = text.Trim(new char[] { ' ', '.', ',' }); for (int i = 1; i < text.Length; i++) { if (text[i - 1] != text[i] - 1) { return false; } } return true; } static void Main(string[] args) { String text = "udhi uhidug uygd abc gutfyf abcde khgdfjg"; Char delimiter = ' '; String[] substrings = text.Split(delimiter); List<string> list = new List<string>(); foreach (var substring in substrings) if (HasAlphabeticalOrder(substring)) list.Add(substring); list.Sort(); foreach (var str in list) Console.WriteLine("{0} ", str); }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д