Функция levenshtein() в PHP
Пример
Расчёт расстояния Левенштейна между двумя строками:
<?php echo levenshtein("Hello World","ello World"); echo "<br>"; echo levenshtein("Hello World","ello World",10,20,30); ?>
Определение и использование
Функция levenshtein() возвращает Levenshtein расстояние между двумя строками.
Levenshtein расстояние, также известное как редакторское расстояние, это количество минимальных редакторских операций, необходимых для преобразования одной строки в другую. Разрешенные редакторские операции включают замену одного символа на другой, вставку символа, удаление символа.
По умолчанию PHP предоставляет одинаковый вес каждому действию (замена, вставка и удаление). Однако, вы можете определить стоимость каждого действия, установив опционные параметры insert, replace, delete.
Комментарии:Функция levenshtein() не различает регистр.
Комментарии:Функция levenshtein() быстрее similar_text() Функция быстрее. Однако, функция similar_text() может предоставить более точные результаты с помощью fewer необходимых изменений.
Синтаксис
levenshtein(string1,string2,insert,replace,delete)
Параметры | Описание |
---|---|
string1 | Обязателен. Требуется первая строка для сравнения. |
string2 | Обязателен. Требуется вторая строка для сравнения. |
insert | Опционально. Стоимость вставки одного символа. По умолчанию это 1. |
replace | Опционально. Стоимость замены одного символа. По умолчанию это 1. |
delete | Опционально. Стоимость удаления одного символа. По умолчанию это 1. |
Технические детали
Возврат значения: | Возвращает Levenshtein расстояние между двумя строками параметров. Если одна из строк превышает 255 символов, возвращается -1. |
Версия PHP: | 4.0.1+ |