Функция 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+