Funzione levenshtein() in PHP
Esempio
Calcolare la distanza di Levenshtein tra due stringhe:
<?php echo levenshtein("Hello World","ello World"); echo "<br>"; echo levenshtein("Hello World","ello World",10,20,30); ?>
Definizione e uso
La funzione levenshtein() restituisce la distanza di Levenshtein tra due stringhe.
La distanza di Levenshtein, anche nota come distanza di editing, è il numero minimo di operazioni di editing necessarie per trasformare una stringa in un'altra. Le operazioni di editing ammesse includono la sostituzione di un carattere con un altro, l'inserimento di un carattere, la rimozione di un carattere.
Per default, PHP assegna lo stesso peso a ogni operazione (sostituzione, inserimento e rimozione). Tuttavia, è possibile definire il costo di ciascuna operazione tramite i parametri opzionali insert, replace, delete.
Commento:La funzione levenshtein() non distingue tra maiuscole e minuscole.
Commento:La funzione levenshtein() è più similar_text() La funzione è più veloce. Tuttavia, la funzione similar_text() può fornire risultati più precisi con un numero minore di modifiche necessarie.
Sintassi
levenshtein(string1,string2,insert,replace,delete)
Parametri | Descrizione |
---|---|
string1 | Obbligatorio. La prima stringa da confrontare. |
string2 | Obbligatorio. La seconda stringa da confrontare. |
insert | Opzionale. Costo di inserimento di un carattere. Predefinito è 1. |
replace | Opzionale. Costo di sostituzione di un carattere. Predefinito è 1. |
delete | Opzionale. Costo di rimozione di un carattere. Predefinito è 1. |
Dettagli tecnici
Valore di ritorno: | Restituisce la distanza di Levenshtein tra due stringhe di due parametri. Se una delle stringhe supera i 255 caratteri, viene restituito -1. |
Versione PHP: | 4.0.1+ |