aika Posted April 7, 2009 Report Share Posted April 7, 2009 (edited) kā salīdzīnāt 2 stringus ar sakritību līdz -1, -2 simboliem? respektīvī lai piemēram atrastu 'user' un 'uber', vai 'user' un 'used' Edited April 7, 2009 by aika Quote Link to comment Share on other sites More sharing options...
Web Developer Posted April 7, 2009 Report Share Posted April 7, 2009 (edited) Tev būs jāraksta pašam sava funkcija vecīt. Ja nemaldos, nekas tāds php nav iebūvēts. Pie tam, nebūs vienkārši. Pieņemsim, ka case nav svarīgs. Uztaisi abus stringus uz lowercase un tad salīdzini. Bet salīdzināšana te būtu īpatnēja. Viss atkarīgs kā tieši vēlies salīdzināt - jābūt pavisam konkrētiem noteikumiem? Edited April 7, 2009 by Web Developer Quote Link to comment Share on other sites More sharing options...
aika Posted April 7, 2009 Author Report Share Posted April 7, 2009 nu es saprotu ka nav vienkārši. tikko iedomājos ka varbūt var salīdzināt pa simbolam, pie atšķirības uztaisīt exception++ un turpināt salīdzināt. - ja exception > 1 - tad false tad tikai kura funkcija te būtu pati ātrākā ? substr? Quote Link to comment Share on other sites More sharing options...
bubu Posted April 7, 2009 Report Share Posted April 7, 2009 Var izmantot, piemēram, Levenšteina attālumu: http://en.wikipedia.org/wiki/Levenshtein_distance Tas no diviem stringiem izrēķina skaitli, cik šie stringi ir "līdzīgi". Precīzāk sakot - cik burtos nepieciešamas izmaiņas, lai no viena iegūtu otru. Attiecīgi - izrēķini šo skaitli, un tad no tā izdomā, vai tev der, ka stringi ir līdzīgi vai nē. Edit: haha - http://php.net/levenshtein Nemaz nezināju, ka php ir gatava tāda iebūvēta funkcija, kas to dara. Vēl izrādās eksistē http://php.lv/similar_text funkcija, kas arī dara ko līdzīgu, tikai tā ir lēnāka nekā levenshtein() fja. Quote Link to comment Share on other sites More sharing options...
Aleksejs Posted April 7, 2009 Report Share Posted April 7, 2009 Vēl, cik atceros bija soundex() algoritms. Un pie "see also" ir arī bubu pieminētie levenshtein() un similar_text(), kā arī metaphone(). Quote Link to comment Share on other sites More sharing options...
Web Developer Posted April 8, 2009 Report Share Posted April 8, 2009 Mūžu dzīvo, mūžu mācies. Programmētājs kā minimums mācās tieši tik ilgi, cik ilgi strādā par programmētāju. Es ar nezināju neko par šādiem algoritmiem... Quote Link to comment Share on other sites More sharing options...
codez Posted April 8, 2009 Report Share Posted April 8, 2009 (edited) WebDeveloper, http://en.wikipedia.org/wiki/List_of_algorithms un http://en.wikipedia.org/wiki/List_of_data_structures! Edited April 8, 2009 by codez Quote Link to comment Share on other sites More sharing options...
Web Developer Posted April 8, 2009 Report Share Posted April 8, 2009 codez - varbūt jau esi paguvis to visu izstudēt, ko tu tur parādīji, bet man tam nav laika. Quote Link to comment Share on other sites More sharing options...
codez Posted April 8, 2009 Report Share Posted April 8, 2009 Mūžu dzīvo, mūžu mācies. Es ar nezināju neko par šādiem algoritmiem... man tam nav laika. :D Quote Link to comment Share on other sites More sharing options...
Web Developer Posted April 8, 2009 Report Share Posted April 8, 2009 (edited) codez - un kāds variants paliek pāri? Šķiet paliek pāri tikai tāds, ka es mācos to, ko man, kas ir aktuāls man personīgi un kam man ir laiks uz attiecīgo brīdi. Man vēl nav ne reizi bijusi vajadzība, kas pausta šajā tēmā, tātad, kur ir problēma? P.S. codez - man prieks īstenībā, ka spēji atlasīt šo izteicienu kopumu - tur pat var uztaisīt algoritmu. Vienīgais, ka tev return parametrs pietrūka! :D Edited April 8, 2009 by Web Developer Quote Link to comment Share on other sites More sharing options...
bubu Posted April 8, 2009 Report Share Posted April 8, 2009 Problēmas nav. Tavi teksti ir vienkārši smieklīgi, kad paskatās, ko raksti divus postus atpakaļ un tagad. Quote Link to comment Share on other sites More sharing options...
Web Developer Posted April 8, 2009 Report Share Posted April 8, 2009 bubu - būsim precīzi - kur tu redzi konfliktus starp maniem tekstiem? Quote Link to comment Share on other sites More sharing options...
aika Posted April 11, 2009 Author Report Share Posted April 11, 2009 Var izmantot, piemēram, Levenšteina attālumu: http://en.wikipedia.org/wiki/Levenshtein_distanceTas no diviem stringiem izrēķina skaitli, cik šie stringi ir "līdzīgi". Precīzāk sakot - cik burtos nepieciešamas izmaiņas, lai no viena iegūtu otru. Attiecīgi - izrēķini šo skaitli, un tad no tā izdomā, vai tev der, ka stringi ir līdzīgi vai nē. Edit: haha - http://php.net/levenshtein Nemaz nezināju, ka php ir gatava tāda iebūvēta funkcija, kas to dara. Vēl izrādās eksistē http://php.lv/similar_text funkcija, kas arī dara ko līdzīgu, tikai tā ir lēnāka nekā levenshtein() fja. Paldies - tieši tas kas vajadzīgs! Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.