[Homework] C# Advanced -Strings and Text Processing- Problem{6} -Palindromes
Write a program that extracts from a given text all palindromes,
e.g. ABBA, lamal, exe and prints them on the console on a single line, separated by comma and space.
Use spaces, commas, dots, question marks and exclamation marks as word delimiters.
Print only unique palindromes, sorted lexicographically.
string input = Console.ReadLine();
MatchCollection MatchesWords = Regex.Matches(input, @"\b\w+\b");
foreach (var word in MatchesWords)
if (Palindrome(word.ToString())) Console.WriteLine(word);
Console.WriteLine();
}
static bool Palindrome(string word)
{
return Enumerable.SequenceEqual(word.ToCharArray(), word.ToCharArray().Reverse());
}
Намирам си палидромите но с foreach не мога да ги сортирам.Ако го направя с for цикъл ще стане лесно но ако имате идея как с foreach да стане ще е екстра.Благодаря!!!
Приказно:) Благодаря много!!!
А може да стане и по-горе с OrderBy() преди да се извика ToArray() :)
Вярно е :)
С OrderBy() стана много по-кратко: http://pastebin.com/1ZfrurmS