PHP levenshtein()Функции

PHP String 参考手册Справочное руководство по строкам PHP

Примеры

Вычислить расстояние Левенштейна между двумя строками:

<?php echo levenshtein("Hello World","ello World"); echo "<br>"; echo levenshtein("Hello World","ello World",10,20,30); ?>

Запустить пример »

Определение и использование

Функция levenshtein() возвращает расстояние Левенштейна между двумя строками.

Расстояние Левенштейна между двумя строками, также известное как расстояние редактирования, — это минимальное количество операций редактирования, необходимых для преобразования одной строки в другую. Разрешённые операции редактирования включают замену одного символа на другой, вставку символа и удаление символа.

По умолчанию PHP присваивает одинаковый вес каждой операции (замена, вставка и удаление). Однако вы можете определить стоимость каждой операции, задав необязательные параметры insert, replace и delete.

Примечание:Функция levenshtein() не учитывает регистр.

Примечание:Функция levenshtein() быстрее, чем функция similar_text(). Однако similar_text() даёт более точные результаты при меньшем количестве необходимых изменений.


Синтаксис

levenshtein(string1,string2,insert,replace,delete)

Parameters Описание
string1 Обязательный. Первая строка для сравнения.
string2 Обязательный. Вторая строка для сравнения.
insert Необязательный. Стоимость вставки символа. По умолчанию — 1.
замена Необязательно. Стоимость замены символа. По умолчанию — 1.
удаление Необязательно. Стоимость удаления символа. По умолчанию — 1.

Технические детали

Возвращаемое значение: Возвращает расстояние Левенштейна между двумя строками-аргументами или -1, если одна из строк превышает 255 символов.
Версия PHP: 4.0.1+


PHP String 参考手册Справочное руководство по строкам PHP Другие расширения