Archive

Posts Tagged ‘php’

Programuotojo penktadienis: Nuo galėčiau iki galiu yra trys raidės – įrodymas

May 30th, 2008 No comments
(foto pasiskolinta iš blogas.lt/verslauk)

Šiandien visiškai atsitiktinai sužinojau, kad skirtumą nuo „Galėčiau“ iki „Galiu“ galima apskaičiuoti pasinaudojant Levenšteino funkcija, matuojančia minimalų simbolių skaičių, reikalingą įterpti, pakeisti, arba pašalinti, kad iš vienos simbolių sekos gautume kitą.
Aišku įdomiausia teoriją iliustruoti pavyzdžiais. Šį kartą renkuosi PHP kalbą. Naudoju funkciją levenshtein:

Pirmas bandymas (šveplas tekstas):

echo levenshtein(‘Galiu’, ‘Galeciau’);

Rezultatas: 3.

Antras bandymas:

echo levenshtein(‘Galiu’, ‘Galėčiau’);

Rezultatas: 5. Taip yra todėl, kad naudoju UTF-8 kodavimą, tam, kad ištaisyti padėtį tenka perkoduoti pradines eilutes:

echo levenshtein(mb_convert_encoding(‘Galiu’,'ISO-8859-13′, ‘UTF-8′) , mb_convert_encoding(‘Galėčiau’, ‘ISO-8859-13′, ‘UTF-8′));

Rezultatas: 3.

Tą ir reikėjo gauti :) Programavimas yra smagus!

Categories: programavimas Tags: ,