s1w Opublikowano 28 Kwietnia 2009 Zgłoś Opublikowano 28 Kwietnia 2009 (edytowane) Witam. Chodzi o przetwarzanie wyrazen regularnych w php (opartych o perla). mianowicie: probowalem setek patterns ale ciagle jestem w klopie dla #1 nie chodza: '/\..+$/''/\..+?$/''/\..+?(?!\.)$/' \ tak to jest wyprzedzajacy znak, tylko nie wiem czy logika tego nie odwrocila sie poprzez $ dla #2 $replace = '/\.[\w\W]+$/'; $with = '';preg_replace($replace,$with,$str);(narazie jeszcze bez zwracania wartosci poprawnych -alphanumerycznych) a i tak zle inne: '/\.[\w\W^\.]+$/' '/\.[\w\W^\.]+?$/' '/\.[\w\W[^\.]]+?$/' '/\.[\w[\W[^\.]]]+?$/''/\.[\w\W&&[^\.]]]+?$/' //&& chodzace w javie, ale raczej nie w php '/\.(?:\w|\W)+$/' //lub nawet bez []'/\.(?:\w?|\W?)+$/' pierwszy zamysl ze zwracaniem: '/\.[(\w)\W^\.]+?$/' '/\.(?:\(w?)|\W?)+$/'$replacer = '\.$1'; czy mialby ktokolwiek jakis pomysl jak to rozwiazac? pozdrawiam michal Edytowane 28 Kwietnia 2009 przez s1w Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
m4r Opublikowano 29 Kwietnia 2009 Zgłoś Opublikowano 29 Kwietnia 2009 Spróbuj takie dla pierwszego: "/\.[^\.]+$/" - usuwa też kropkę "/[^\.]+$/" - zostawia kropkę Z drugim jeszcze pokombinuję. Faktycznie hardcore. Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...