Sintassi:
int levenshtein (string $ string1, string $ string2, int $ insertion_cost = 1, int $ sostituzione_cost = 1,
int $ deletion_cost = 1)
Questa funzione ha cinque argomenti. Il primo e il secondo argomento sono obbligatori e gli altri cinque argomenti sono opzionali. Gli scopi di questi cinque argomenti sono descritti di seguito:
Questa funzione restituisce la distanza di Levenshtein tra i valori della prima e del secondo argomento della funzione. Se il numero totale di caratteri delle stringhe è più di 255, la funzione restituisce -1.
Diversi esempi di funzione Levenshtein ()
I diversi usi della funzione Levenshtein () sono mostrati in questa parte del tutorial usando più esempi.
Esempio 1: confronta due stringhe di una sola parola
Crea un file PHP con il seguente script che calcola la distanza Levenshtein tra due singole parole usando la funzione Levenshtein (). Il valore della distanza di Levenshtein è stampato in seguito.
// Definisci la prima stringaLa distanza di Levenshtein è ".Levenshtein ($ STR1, $ STR2)."
";Produzione:
Viene visualizzato il seguente output dopo aver eseguito lo script precedente. La distanza di Levenshtein di due parole, "Fool" e "Feel", è 2 che è stampata nell'output:
Esempio 2: confronta due stringhe di più parole
Crea un file PHP con il seguente script che clacola la distanza di Levenshtein tra due stringhe di più parole usando la funzione Levenshtein (). Il valore della distanza di Levenshtein è stampato in seguito. Qui, la prima stringa contiene tre parole e la seconda stringa contiene due parole. Una parola è comune in entrambe le stringhe. La distanza di Levenshtein di queste due stringhe viene stampata in seguito.
// Definisci la prima stringaLa distanza di Levenshtein è ".Levenshtein ($ STR1, $ STR2)."
";Produzione:
Viene visualizzato il seguente output dopo aver eseguito lo script precedente. Qui, il primo valore di stringa è "Linguaggio di programmazione PHP"E la seconda stringa è"Programmazione Java". La parola "Programmazione"È comune in entrambe le stringhe. Sono necessari quattro caratteri per modificare per ottenere "java" da "php" e 9 caratteri (lingua) sono necessari per rimuovere dalla prima stringa per ottenere la seconda stringa. Quindi, la distanza di Levenshtein è 4+9 = 13.
Esempio 3: cerca la partita esatta o più vicina nell'array
Crea un file PHP con il seguente script che cerca una stringa particolare in un array. Scopri il valore dall'array che corrisponde esattamente o parzialmente al valore della stringa di ricerca calcolando la distanza Levenshtein tra la stringa di ricerca e ogni elemento dell'array. Il valore della stringa di ricerca è prelevato dal parametro URL. Se non viene fornito alcun parametro URL, il valore della stringa predefinito viene utilizzato per la stringa di ricerca. Il valore iniziale di $ short_distance è impostato su -1 prima di iterarsi i valori dell'array per trovare la corrispondenza esatta o più vicina. Il primo per ciascuno Loop viene utilizzato per stampare i valori esistenti dell'array. Il secondo per ciascuno Il ciclo viene utilizzato per iterare i valori dell'array e calcolare la distanza di Levenshtein tra ciascun valore dell'array e la stringa di ricerca in ogni iterazione. Se la distanza di Levenshtein diventa 0 in qualsiasi iterazione, nell'array esiste la corrispondenza esatta della stringa di ricerca. Altrimenti, la corrispondenza più vicina della stringa di ricerca viene recuperata dai valori dell'array in base al valore della distanza di Levenshtein più basso.
// Imposta il valore di ricercaProduzione:
Viene visualizzato il seguente output dopo l'esecuzione dello script precedente se non viene fornito alcun parametro URL. In questo caso, il valore di ricerca predefinito è "Giava"Che esiste nell'array. Quindi, la distanza di Levenshtein diventa 0 per questo valore di ricerca quando si calcola la distanza di Levenshtein con il quinto elemento dell'array che è anche "Giava":
Viene visualizzato il seguente output dopo l'esecuzione dello script precedente per il valore di ricerca che è "Pitone"Questo è dato nel parametro URL. In questo caso, il valore di ricerca "Pitone"Esiste nell'array. Quindi, la distanza di Levenshtein diventa 0 per questo valore di ricerca quando si calcola la distanza di Levenshtein con il terzo elemento dell'array che è anche "Pitone":
Viene visualizzato il seguente output dopo l'esecuzione dello script precedente per il valore di ricerca "Python3"Questo è indicato nel parametro URL. In questo caso, il valore di ricerca è "Python3"Che parzialmente corrisponde a un elemento dell'array che è"Pitone". Quindi, la distanza di Levenshtein diventa 1 per questo valore di ricerca quando si calcola la distanza di Levenshtein con il terzo elemento dell'array:
Conclusione
I diversi usi della funzione Levenshtein () che sono mostrati in questo tutorial aiuteranno i nuovi utenti di Python a conoscere lo scopo di utilizzare questa funzione ed essere in grado di utilizzarla correttamente nel proprio script.