Funkcja PHP levenshtein()
Przykład
Oblicz odległość Levenshteina między dwoma strunami:
<?php
echo levenshtein("Hello World","ello World");
echo "<br>";
echo levenshtein("Hello World","ello World",10,20,30);
?>
Definicja i użycie
Funkcja levenshtein() zwraca odległość Levenshteina między dwoma ciągami.
Odległość Levenshteina to liczba znaków, które należy zastąpić, wstawić lub usunąć, aby przekształcić ciąg1 w ciąg2.
Domyślnie PHP nadaje każdej operacji (zamień, wstaw i usuń) równą wagę. Można jednak zdefiniować koszt każdej operacji, ustawiając opcjonalne parametry wstawiania, zastępowania i usuwania.
Uwaga: W funkcji levenshtein() nie jest rozróżniana wielkość liter.
Uwaga: funkcja levenshtein() jest szybsza niż funkcja similar_text(). Jednak metoda similar_text() zapewni dokładniejszy wynik przy mniejszej liczbie potrzebnych modyfikacji.
Składnia
levenshtein(string1,string2,insert,replace,delete)
Wartości parametrów
Parameter | Description |
---|---|
string1 | Required. First string to compare |
string2 | Required. Second string to compare |
insert | Optional. The cost of inserting a character. Default is 1 |
replace | Optional. The cost of replacing a character. Default is 1 |
delete | Optional. The cost of deleting a character. Default is 1 |
Szczegóły techniczne
Wartość zwrotu: | Zwraca odległość Levenshteina między dwoma ciągami argumentów lub -1, jeśli jeden z ciągów przekracza 255 znaków |
---|---|
Wersja PHP: | 4.0.1+ |
❮ Odniesienie do ciągów PHP