2014-11-26 6 views
0

Я хотел бы выделить и сообщить о различиях текста между двумя строками с Java. Каков хороший способ сделать это? Нужно ли мне токенизировать обе строки и сравнивать, или есть более простой способ?Выделение текстовых различий между двумя строками Java

Пример:

У меня есть 2 строки так:

Предыдущая строка: ПОДЪЕМ НА 5900' , то восхождение ПРАВЫЙ поворот на 11000' на заголовок 193 и исходящий Текущая строка: взобраться на 6500' , то восхождение LEFT поворачивается на 11000'в заголовке 201 и входящем

В настоящее время я просто показываю предыдущую и текущую строки, выполняя сравнение строк, но я хочу выделить фактическую подстроку, которая изменилась с предыдущей строки, например :

Текущая строка: ПОДЪЕМ НА 6500' затем восхождение ЛЕВЫЙ поворот к 11000'on заголовок и въездной

Благодарим Вас за помощь!

Спасибо Praveen

+1

Проверьте это http://stackoverflow.com/questions/15303631/what-are-some-algorithms-for-comparing-how-similar-two-strings- – madmik3

ответ

-1

Да, возможно, вы можете разметить строковые символы. Используйте charAt (int index), чтобы токенизировать символы строки. Вы можете увидеть пример кода ниже: -

for(int i=0 ; i<stringNameOrg.length ; i++) 
{ 
    if(stringNameOrg.charAt(i) != stringNameNew.charAt(i))) //considering both strings are of same size 
    { 
     //do stuff 
    } 
} 
+0

Вы абсолютно ошибаетесь ... Что делать, если длина строк не соответствует ... Например, «LEFT 2010» и «RIGHT 2010». –

+0

Вы правы. Но я уже писал, что «если обе строки имеют одинаковый размер». Я не дал правильный код. Это всего лишь пример –

+0

Но это не ответ на заданный вопрос. –

Смежные вопросы