PHP levenshtein() -funktio

Esimerkki

Laske kahden merkkijonon välinen Levenshtein-etäisyys:

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

Suoritusesimerkki

Määrittely ja käyttö

levenshtein() -funktio palauttaa kahden merkkijonon välisen Levenshtein-etäisyyden.

Levenshtein-etäisyys, myös tunnettu editointi-etäisyys, tarkoittaa kahta merkkijonoa välillä tarvittavien vähimmäiseditointien määrää, jolla yksi merkkijono voidaan muuntaa toiseksi. Sallitut editointitoimet ovat yhden merkin korvaaminen toisella, merkin lisääminen ja merkin poistaminen.

Oletusasennossa PHP antaa jokaiselle toiminnalle (korvaus, lisäys, poisto) saman painon. Voit kuitenkin määrittää jokaisen toiminnan kustannuksen valitsemalla valinnaiset insert, replace, delete -parametrit.

Huomautus:levenshtein() -funktio ei erota isokirjaimia ja pienikirjaimia.

Huomautus:levenshtein() -funktio on nopeampi kuin similar_text() Funktio on nopeampi. Mutta similar_text() -funktio voi tarjota sinulle tarkempia tuloksia vähemmän välttämättömien muutosten määrällä.

Syntaksi

levenshtein(string1,string2,insert,replace,delete)
Parametrit Kuvaus
string1 Välttämätön. Tarvittava ensimmäinen vertailustringi.
string2 Välttämätön. Tarvittava toinen vertailustringi.
insert Valinnainen. Lisäämisen kustannus. Oletus on 1.
replace Valinnainen. Korvaamisen kustannus. Oletus on 1.
delete Valinnainen. Poistamisen kustannus. Oletus on 1.

Tekninen yksityiskohta

Palautusarvo: Palauttaa kahden parametrisen merkkijonon välinen Levenshtein-etäisyys. Jos yksi merkkijonosta on yli 255 merkkiä, palauttaa -1.
PHP versio: 4.0.1+