Проверить, является ли одна строка анаграммой для другой строки - C#
Формулировка задачи:
прошу помощи с кодом
в коде я сделал следующее :
- привел строки к нижнему регистру
- убрал пробели и знаки пунктуации
дальше ни как не могу их правильно сравнить и сортировка не помогает либо
я что-то не то делаю
ниже код и полное задание
//3. Написать программу, проверяющую, является ли одна строка анаграммой
//для другой строки (строка может состоять из нескольких слов и символов пунктуации).
//Пробелы и пунктуация, разница в больших и маленьких буквах должны игнорироваться. Обе строки вводятся с клавиатуры.
using System;
using System.Text;
using System.Text.RegularExpressions;
using System.Linq;
public class Example
{
static void Main(string[] args)
{
string tmp = "Аз есмь строка, живу я, мерой остр.";
Console.WriteLine(tmp);
string tmp2 = tmp.ToLower();
Console.WriteLine(tmp2);
Regex regex = new Regex("\\w");
Match match = regex.Match(tmp2);
while (match.Success)
{
Console.Write(match.Value);
match = match.NextMatch();
}
Console.WriteLine();
string pmt = "За семь морей ростка я вижу рост !..";
Console.WriteLine(pmt);
string pmt2 = pmt.ToLower();
Console.WriteLine(pmt2);
Regex regex1 = new Regex("\\w");
Match match1 = regex.Match(pmt2);
while (match1.Success)
{
Console.Write(match1.Value);
match1 = match1.NextMatch();
}
Console.WriteLine();
}
}Решение задачи: «Проверить, является ли одна строка анаграммой для другой строки»
textual
Листинг программы
var s = Regex.Replace(input, @"\W", "").ToLower(); // здесь input - это входящая строка.