ďťż
Podstrony
|
telcocafewitamoto mój problemik. postanowiłem sobie zrobić skrypt doskonały do cenzurowania wypowiedzi userów na stronie. i podam przykład komentarza (z enterami): kurka kUrka kurka prokurka i prosty skrypcik z zastosowaniem wyrażeń regularnych: function cenzura($txt) { $pyt='select * from cenzura'; $wyk=zapytanie($pyt); while($cen=mysql_fetch_array($wyk)) { $txt=preg_replace('#'.$cen['wyraz'].'#i','***', $txt); } return $txt; } ...dzięki któremu otrzymuję coś jak: *** *** *** pro*** i teraz: co zrobić aby wszystko było jak wyżej z wyjątkiem wyrazu "prokurka" który ewidentnie nie jest wulgaryzmem. z wyrażeniami dopiero zaczynam więc przyda się gotowiec wzorca. z góry dzięki! dla przykładu coś co chciałbym otrzymać: *** *** *** prokurka a nie lepiej zrobić tablicę cenzura zawierającą słowa nieporządane a później $wypowiedz = str_replace($cenzura, '***', $wypowiedz); Użytkownik chicken81 edytował ten post 12 październik 2005, 08:58 tak by było lepiej ale jakby ktoś wpisał np. kuRka to skrypt już by tego nie wyłapał. str_replace() jest "czułe" na wielkość znaków :/ Użytkownik sdr edytował ten post 12 październik 2005, 19:16 str_replace() jest "czułe" na wielkość znaków :/ Ale str_ireplace() już nie. str_ireplace (PHP 5) str_ireplace -- Case-insensitive version of str_replace(). no w sumie to by było dobre, ale nie mam jeszcze na serwerze dostępnego php5 <_< jest tu może ktoś kto zna się lepiej ode mnie na wyrażeniach regularnych? użyj przy tą Twoją funkcją co zamienia: strtolower (zamienia wszystkie litery na małe) I nie będziesz miał już kłopotu ;) |
|||
Sitedesign by AltusUmbrae. |