Как определить разные символы из двух строк - PullRequest
0 голосов
/ 17 марта 2020

Мне нужны разные символы между двумя словами

example= (1) Sunday (2) Sundey
different character i need **e**

example= (1) Monday (2) Monbuy
different character i need **bu**

Ответы [ 2 ]

1 голос
/ 17 марта 2020

Протестировал с введенным вами входом, отлично работает в этих случаях

private static String getDifferentChar(String data, String compareWithData) {

    if(data == null || compareWithData == null) return null;
    int dataLength = data.length();
    int compareWithDataLength = compareWithData.length();

    String differentChar = "";
    int pos =0;

    if(pos<dataLength && compareWithDataLength >=dataLength) {
       while(pos<dataLength) {
      if(data.charAt(pos) != compareWithData.charAt(pos)) {
        differentChar+= "" + compareWithData.charAt(pos);
        }
             pos++;
       }

        if(compareWithDataLength > dataLength) {
             differentChar+= "" + compareWithData.substring(dataLength);
        }

    } 
    return differentChar;

}
0 голосов
/ 17 марта 2020

Левенштейновское расстояние неожиданно приходит на ум: https://www.tutorialspoint.com/cplusplus-program-to-implement-levenshtein-distance-computing-algorithm

Он рассчитывает необходимое количество вставок, удалений и обменов для преобразования одной строки в другую, вы можете легко изменить ее для соответствия Ваши собственные критерии для различия строк.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...