Задать вопрос
GRomanEv
@GRomanEv

Как осуществить поиск различий в двух строках?

Есть две строки, и во второй есть одно отличие - это изменённый символ 0 на 1 (это всё пример). Мне нужно найти отличия в тексте и индексы этих отличий. Я знаю про программу diff, но не хотелось бы прибегать к её использованию. Можете что нибудь посоветовать? Регулярки хороши при поиске совпадений, а вот при поиске различий - хз, не сталкивался... вот!
  • Вопрос задан
  • 2639 просмотров
Подписаться 2 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 2
Отличие одно? Тогда чем не подходит это:
static void Main()
    {
        string s1 = "HUFISLKJG74KGLSKIHG7342HGJDSFG0SHFUISEHF23",
         s2 = "HUFISLKJG74KGLSKIHG7342HGJDSFG1SHFUISEHF23";
         
        Console.Write(FindDifference(s1, s2));
    }
    
    static int FindDifference(string s1, string s2)
    {
        for (int i = 0; i < s1.Length; i++)
        {
            if (s1[i] != s2[i])
               return i;
        }
        return -1;
    }
Ответ написан
Комментировать
akamajoris
@akamajoris
Смотрите в сторону расстояния Левенштейна.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы