2015-07-29 5 views
1

Я ищу инструмент, который бы сравнивал две текстовые строки и возвращал результат, фактически являющийся индикатором их сходства (например, 95%). Он должен быть реализован на платформе, поддерживающей библиотеки Java.Библиотека Java для нечетких сравнений текстовых строк

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

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

Можете ли вы мне посоветовать? Большое спасибо

+0

http://stackoverflow.com/questions/327513/fuzzy-string-search-in-java –

ответ

1

StringUtils от Apache имеет то, что называется индикатором расстояния Левенштейн. http://commons.apache.org/proper/commons-lang/javadocs/api-3.1/org/apache/commons/lang3/StringUtils.html

Расстояние Levenshstein - это алгоритм, который выводит сходство на основе «расстояния редактирования». Хотя я не уверен, что это «нечеткое».

Пример: int distance = StringUtils.getLevenshteinDistance("cat", "hat");