osk Posted February 12, 2006 Report Share Posted February 12, 2006 Problēma - cilvēks ieiet formā un aizmieg uz viena burta - "a" un pēc tam to nosūta uz serveri. Rezultātā parādās a*10^n, kā to lietu piegriezt? Jeb vnk ar roku dzēst postu un viss? Link to comment Share on other sites More sharing options...
bubu Posted February 12, 2006 Report Share Posted February 12, 2006 ja gribi ūber risinājumu, tad saskaiti katra burta atkārtošanos stringā, un ja piemēram viena burta biežums ir lielāks par pusi no stringa garuma, tad izvadi erroru/brīdinājumu atpakāl un nepievieno datus. Tika... cik bieži cilvēki aizmieg uz viena burta? Link to comment Share on other sites More sharing options...
osk Posted February 12, 2006 Author Report Share Posted February 12, 2006 Bieži jau nav, tāpē arī meklēju veixmīgākos risinājumus. Jo nav vērts sēdināt datora resursu visiem postētājiem 1 posta dēļ. Gatavas funkcijas iekš php nav? Link to comment Share on other sites More sharing options...
bubu Posted February 12, 2006 Report Share Posted February 12, 2006 Ja tu domāji funkciju, kas saskaita katra simbolu skaitu stringā, tad ir. Link to comment Share on other sites More sharing options...
Delfins Posted February 12, 2006 Report Share Posted February 12, 2006 '/[a]+?/i' => 'a' PS: minētajam burtam :) Link to comment Share on other sites More sharing options...
bubu Posted February 12, 2006 Report Share Posted February 12, 2006 Tad jau labāk universālāk uzreiz: '/(.)(\1)*/i' => '\\1' Lai der jebkuram burtam, ne tikai a. Link to comment Share on other sites More sharing options...
osk Posted February 12, 2006 Author Report Share Posted February 12, 2006 Paldies, bet skaits stringā jau neko daudz nedod, tāpt jāanalizē, kas tas par stringu. Link to comment Share on other sites More sharing options...
bubu Posted February 12, 2006 Report Share Posted February 12, 2006 Un kāds tad tas var būt? Tu vispirms cilvēciski (tā lai to saprastu katrs zīdainis) pasaki, kuri stringi neder, un kuri der - tad tev jau būs gatavs algoritms. Atliks vien tāds nieks kā pārvērst to kodā. Link to comment Share on other sites More sharing options...
osk Posted February 13, 2006 Author Report Share Posted February 13, 2006 Doma bija tāda, ja postā vairāk kā 5 pēc kārtas esošie burti ir vienādi, tad nepostē. Piem, "spaaaaaaaams" -> slikts, "spaaaaams" -> labs ;o) Protams, uz visiem burtiem, simboliem. Link to comment Share on other sites More sharing options...
bubu Posted February 13, 2006 Report Share Posted February 13, 2006 Ja vajag aizvietot ar vienu tos piecus, tad preg_replace regexps: '/(.)(\1){4}/i' => '\\1' Ja vajag pārbaudīt, tad tāds pats regexps tikai ar preg_match. Link to comment Share on other sites More sharing options...
Recommended Posts