Предположим, вам нужно выполнить какое-то сравнение между двумя файлами. Это нужно делать только тогда, когда это имеет смысл, иными словами, вам не нужно сравнивать файл JSON с файлом свойств или файл .txt с файлом .jar
Кроме того, предположим, что у вас есть механизм, позволяющий разобраться во всех этих вещах, и что теперь сводится к фактическому имени файла. Вы бы хотели сравнить «myFile.txt» с «myFile.txt», но не с «SomeElse.txt». Цель состоит в том, чтобы быть как можно ближе к правилам "яблоки с яблоками".
Итак, вот и мы, с одной стороны у вас есть «myFile.txt», а с другой стороны у вас есть «_myFile.txt», «_m_y_f_i_l_e.txt» и «thingReallyClever.txt ».
Задача - выбрать ближайшее имя для последующего сравнения. К сожалению, идентичное имя не найдено.
Глядя на композицию персонажей, нетрудно понять, что это за отношения. Мой алгоритм говорит:
_myFile.txt to _m_y_f_i_l_e.txt 0.312
_myFile.txt to somethingReallyClever.txt 0.16
Таким образом, _m_y_f_i_l_e.txt ближе к_myFile.txt, чем что-то на самом делеClever.txt. Фантастика. Но также говорит, что ist только в 2 раза ближе, где, как в действительности, мы можем посмотреть на 2 файла и никогда бы не стали сравнивать что-тоReallyClever.txt с _myFile.txt.
Почему?
Какую логику вы бы посоветовали мне применить, чтобы не только выяснить вероятность наличия символов в одном месте, но и проверить, имеет ли смысл определенный вес?
В моем примере, что-тоReallyClever.txt должно было иметь вес 0.0
Надеюсь, я проясняюсь.
Пожалуйста, поделитесь своим опытом и мыслями по этому поводу.
(какой бы подход вы ни предложили, он не должен зависеть от количества символов, из которых состоит имя файла)