Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Вебмастеру (http://forum.oszone.net/forumdisplay.php?f=22)
-   -   регулярное выражение на пхп. (http://forum.oszone.net/showthread.php?t=68770)

Drem 21-07-2006 00:29 463271

регулярное выражение на пхп.
 
Люди в регулярных выражениях я 0.Читать справчник нет времени, надо срочно.
Помогите составить выражение на проверку имени загружаемого графического файла.
Имя файла должно быть только на английском и таких форматов: jpg, jpeg, gif, bmp, png.
Думаю тут ничего сложного.

strejiok 21-07-2006 11:09 463417

'/(.*\.jpg|.*\.jpeg|.*\.bmp|.*\.gif|.*\.png)/i'

да?

vadimiron 21-07-2006 11:45 463426

или
"/(.*)\.(jpg|jpeg|bmp|gif|png)/"
что в общемто равнозначно

мне же больше нравится вариант сделать массив из всех разрешённых расширений, отрезать расширение с помощью strrpos and substr, и потом проверить в массиве ли с помощью in_array

mrcnn 21-07-2006 12:05 463435

vadimiron,strejiok имя файла только на английском, а в указанных вами вариантах русский и любой другой язык позволяется

mar 21-07-2006 12:47 463458

тогда [a-zA-Z]
или если еще цифры можно, то [a-zA-Z0-9]

mrcnn 21-07-2006 13:38 463479

mar]
Цитата:

тогда [a-zA-Z]
или если еще цифры можно, то [a-zA-Z0-9]
Я хотел написать тоже самое, но это не сработает при имени файла "rрекаus.jpg.", то есть при наличии и русских и английских букв. С помощью этого выражения можно только посимвольно проверять.

mar 21-07-2006 14:12 463493

Цитата:

Я хотел написать тоже самое, но это не сработает при имени файла "rрекаus.jpg.", то есть при наличии и русских и английских букв
т.е. при этом пропустился вариант со смесью букв?

Drem 21-07-2006 14:33 463510

ок то-что надо сенкс....

mrcnn 21-07-2006 14:50 463521

Цитата:

т.е. при этом пропустился вариант со смесью букв?
Да, этим проверяется только наличие английских букв, а не факт отсутствия русских или каких-либо других

Vlad Drakula 21-07-2006 14:55 463524

mrcnn, oleksiy, mar

"/^([a-zA-Z0-9]*)\.(jpg|jpeg|bmp|gif|png)$/"

strejiok 21-07-2006 14:59 463525

:) ну да ну да.

Drem 21-07-2006 23:35 463649

Код:

if(!eregi("/^([a-zA-Z0-9_]*)\.(jpg|jpeg|bmp|gif|png)$/", $up_photo_name)){
 echo 'Такие файлы не загружаю!';
 exit;
}

что-то тут не так, совсем ни чего не загружает...
а без "!" загружает всё подряд.

Vlad Drakula 21-07-2006 23:43 463651

oleksiy
нету функцию используете... нужно использовать "preg_match"....

Drem 22-07-2006 00:16 463664

ах да... тьфу, извиняюсь... спасибо.


Время: 11:14.

Время: 11:14.
© OSzone.net 2001-