сравнение строк по неполному совпадению - C#
Формулировка задачи:
Подскажите возможно ли сравнение строк по неполному совпадению. Т.е. если несколько символов пропущены или отличаются.
"Неполное совпадение соответствует выбору" =
"Неполое совпадение сооетствует выбору"
Заранее спс
Код к задаче: «сравнение строк по неполному совпадению - C#»
static bool PartialCompare(string str1, string str2, double partiality) { int len = str1.Length; if (len != str2.Length) throw new NotSupportedException("Этот метод пока не поддерживает сравнение разных по длине строк."); if (len == 0) throw new ArgumentException("Строка не должна быть пустой."); int equalChars = 0; for (int i = 0; i < len; i++) if (str1[i] == str2[i]) equalChars++; // Строки не обеспечивают достаточную степень сходства if ((double)equalChars / len < partiality) return false; // Строки частично равны return true; } static void Main(string[] args) { string s1 = "Абдоминальный тип ожирения"; string s2 = "Адбоменальний дип ожигения"; Console.WriteLine(PartialCompare(s1, s2, 0.1)); Console.WriteLine(PartialCompare(s1, s2, 0.5)); Console.WriteLine(PartialCompare(s1, s2, 0.9)); Console.WriteLine(PartialCompare(s1, s2, 1d)); Console.WriteLine(PartialCompare("Hello", "Hello", 1d)); }
11 голосов, оценка 3.727 из 5
СОХРАНИТЬ ССЫЛКУ