C# функция сравнения строк-наименований
Вводные данные
Имеется интернет-магазин. Нам необходимо найти на нем ссылку на страницу, соответствующую товару, с конкретным наименованием. Для этого мы сделали парсер, который обходит все страницы товаров и сравнивает искомое наименование и наименование товара с текущей страницы.
Ваша задача
Написать C# функцию, которая будет сравнивать 2 строки (собственно наименование эталонного искомого товара И найденного) и выдавать степень их соответствия друг другу (например по 100 бальной шкале).
Дополнительные требования
Очень желательно, чтобы у вас был опыт реализации именно подобных задач (то есть сравнения наименований товаров).
Важно!
Можно задействовать расстояние Левенштейна (можем предоставить исходники с его использованием), однако нужно учитывать, что в строке могут присутствовать дополнительные слова (например название цвета товара), которые на расстояние как таковое влияют, а на суть не сильно.
====
Case #1: Полное совпадение
Meizu H1
Meizu H1
100% совпадение
====================
Case #2: Левенштейн в базовом виде (без градации по значимости слов при сравнении)
Meizu H1 черный
Meizu H1 зеленый
70% совпадение
======================
Case #3: Левенштейн в базовом виде (с учетом градации по значимости слов при сравнении; например, слова "черный" и "зеленый" заданы в числе слов, которые имеют низкую значимость при сравнении)
Meizu H1 черный
Meizu H1 зеленый
90% совпадение
======================
======================
Желательно, чтобы я мог задавать коэффициент, снижающий значимость.