Cytat(thek @ 16.03.2010, 20:29:41 )

Tak, ale u Ciebie także. Jakim cudem? Ano takim, że ma on przykładowo X słów z Y końcówkami. Słówko "cod" zostanie sprawdzone pod kątem występowania jako słowa:
cod, coded, codes, coding, cods, coder, coders
A co u Ciebie? Ty każde z nich piszesz jako osobny regexp (!) Nadal nie widzisz, że oba rozwiązania wcale nie są bardzo inne? Ja patrząc z boku tak to widzę. Ty jako użytkownik swojego rozwiązania tego nie zauważasz, zachłystując się rzekomo mniejszą ilością regexp. Ale to tylko złudzenie. Napisz teraz swoje tak, by objęło owo X wyrazów wraz z Y możliwymi końcówkami swoją metodą

Pochlastasz się przy pisaniu regexp numer 432

No i dalej nie przyjrzałeś się dokładnie rozwiązaniom

Cytat
Ty każde z nich piszesz jako osobny regexp (!)
Oh, rly?
array('pattern' => '/(\W+)cod(|ed|es|ing|s|er|ers)(\W+)/si', 'replace' => '$1***$2$3 ') );
albo jeszcze lepiej (to załatwia wszystkie końcówki)
array('pattern' => '/(\W+)cod(|\w+)/si', 'replace' => '$1***$2') );
i sprawa załatwiona. Nie muszę rozbijać wypowiedzi na tablicę wyrazów przy pomocy explode() i nie muszę generować za każdym razem wyrażenia regularnego. Jeśli nadal chcesz się kłócić co jest szybsze możesz to przetestować. Jeśli nie będzie Ci się chciało a dalej będziesz pisał że w w moim rozwiązaniu wykonuje się więcej regeqpów po powrocie z roboty Ci to sam udowodnie

Cytat
Napisz teraz swoje tak, by objęło owo X wyrazów wraz z Y możliwymi końcówkami swoją metodą winksmiley.jpg Pochlastasz się przy pisaniu regexp numer 432 winksmiley.jpg
Proszę bardzo:
array('pattern' => '/(\W+)wyraz_1(|\w+)/si', 'replace' => '$1*****$2'), array('pattern' => '/(\W+)wyraz_2(|\w+)/si', 'replace' => '$1*****$2'), array('pattern' => '/(\W+)wyraz_3(|\w+)/si', 'replace' => '$1*****$2'), array('pattern' => '/(\W+)wyraz_4(|\w+)/si', 'replace' => '$1*****$2'), array('pattern' => '/(\W+)wyraz_X(|\w+)/si', 'replace' => '$1*****$2') );
//albo
array('pattern' => '/(\W+)(wyraz_1|wyraz_2|wyraz_3|wyraz_4|...|wyraz_X)(|\w+)/si', 'replace' => '$1*****$3'), );
Jakoś można się wyrobić nawet w jednym regexpie

Może po prostu nie do końca zdajesz sobie sprawę jakie możliwości dają wyrażenia regularne :/