Wyrazenie regularne pobierajace rozszerzenie

0

przykladowy link: http://prs.google.pl/saq.sqw.e.q.w.dd.a.zip

Chce z niego wyciagnac tekst poza ostatnia kropka czyli w/w przykladzie jest to zip, jak to zrobic przy uzyciu preg_match?

0

Czego nie wiesz? Jak stworzyć wzorzec? Czy w ogóle nie chciało Ci się szukać instrukcji do preg_match?

0
preg_match('#\.[a-z0-9]{2,3}$#i', 'http://prs.google.pl/saq.sqw.e.q.w.dd.a.zip', $m);
var_dump($m);

Zakladamy, ze rozszerzenie ma 2,3 znaki z przedzialu A-Z lub 0-9.

0

Musi być preg_match? To się da zrobić szybciej przy użyciu strrpos() i substr().

$test = substr($test, strrpos("http://prs.google.pl/saq.sqw.e.q.w.dd.a.zip", '.'));

Z szybkiego testu jaki przeprowadziłem - jakieś 3 razy szybciej się to wykonuje:

(preg) Elapsed time: 0.0000030977 s
(subs) Elapsed time: 0.0000008584 s

1 użytkowników online, w tym zalogowanych: 0, gości: 1