powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / eregi
10 сообщений из 10, страница 1 из 1
eregi
    #32813230
Vovan_Tverskoy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем доброго времени суток.
Помогите с ereg, а именно, из формы приходит значение цвета в формате
$a='#0a2533'; Надо его проверить что бы было ровно 3 пары значений после # не больльше и не меньше. Делаю так: $b=ereg('#+[a-fA-F0-9]{6}',$a);
Так вот если задано, например #0a25 - соответственно дает ошибку, и это правильно. А если #0a253456 то ошибку не дает. Подскажите, плз. где ошибочка.
...
Рейтинг: 0 / 0
eregi
    #32813252
*
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
*
Гость
$b = preg_match('/^\s*#?[0-9A-F]{6}\s*$/si',$a);
PS: кстати, цвета могут задаваться не только цифрами, но и именами. До кучи - читайте PCRE , Регулярные выражения, часть I + часть II , про POSIX (ereg-функции) советую вообще забыть ;)
...
Рейтинг: 0 / 0
eregi
    #32813406
DocAl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Отчего же забыть? Они достаточно распространены, и если вам они не нужны -- это не означает, что они не нужны никому.
...
Рейтинг: 0 / 0
eregi
    #32813412
*
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
*
Гость
DocAlОтчего же забыть? Они достаточно распространены, и если вам они не нужны -- это не означает, что они не нужны никому.Нужны они мне или ненужны, нужны они вам или ненужны - это разговор на уровне детского лепета.
Минусы POSIX:
1. Они как правило более медленны. Об этом, в частности, в пропахшей нафталином статье Оптимизация программ на PHP
2. Их возможности слишком примитивны и с лёгкостью перекрываются возможностями PCRE.
3. PCRE используется также в Апачевских конфигах да и много где ещё - гораздо проще знать один универсальный механизм, чем много разных, применяемых под задачу - незачем голову мусором забивать.
Плюсы:
Лично мне неизвестно ни одного.
...
Рейтинг: 0 / 0
eregi
    #32813413
*
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
*
Гость
PS: аргументы типа "я видел их использование в массе чужих скриптов, многие из которых скачал с файлопомоек" просьба не приводить - это просто смешно ;)
...
Рейтинг: 0 / 0
eregi
    #32813430
DocAl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А аргументы я видел (и использовал) их в других областях, где альтернативой может быть только простейшие шаблоны? (типа ^*?$)
...
Рейтинг: 0 / 0
eregi
    #32813438
*
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
*
Гость
DocAlА аргументы я видел (и использовал) их в других областях, где альтернативой может быть только простейшие шаблоны? (типа ^*?$)Это голословно и неконкретно. Я тоже много чего видел (кстати, вы привели вообще какой-то левый шаблон), многое из видимого далеко неидеально ;) Например, в DOS'е вообще нет регулярок - есть только * и ? - и что же? :) Теперь прикажете отказаться в PHP от встроенного механизма PCRE и пользоваться только такими примитивами (естесственно, предварительно написав для этого библиотечку)? :)
PS: прошу заметить - речь идёт о PHP. В качестве аргумента ещё можно было бы принять, что POSIX реализован на других перспективных скриптовых серверных (и клиентских) языках, если при этом не реализовано PCRE - только я что-то сомневаюсь существовании подобных - все остальные ограничения, которые могут быть - скорее, искусственны.
...
Рейтинг: 0 / 0
eregi
    #32813460
*
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
*
Гость
Забыл ещё один минус - http://php.net/ref.regex
These regular expression functions are not binary-safe. The PCRE functions are.
...
Рейтинг: 0 / 0
eregi
    #32813487
DocAl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
* DocAlА аргументы я видел (и использовал) их в других областях, где альтернативой может быть только простейшие шаблоны? (типа ^*?$)Это голословно и неконкретно. Я тоже много чего видел (кстати, вы привели вообще какой-то левый шаблон), многое из видимого далеко неидеально ;) Например, в DOS'е вообще нет регулярок - есть только * и ? - и что же? :) Теперь прикажете отказаться в PHP от встроенного механизма PCRE и пользоваться только такими примитивами (естесственно, предварительно написав для этого библиотечку)? :)
PS: прошу заметить - речь идёт о PHP. В качестве аргумента ещё можно было бы принять, что POSIX реализован на других перспективных скриптовых серверных (и клиентских) языках, если при этом не реализовано PCRE - только я что-то сомневаюсь существовании подобных - все остальные ограничения, которые могут быть - скорее, искусственны.
Это был не шаблон, это собственно все элементы, кроме символов, которые могут быть использованы.
Кстати, я же не говорю, что PCRE -- это жуткая гадость, которую следует забыть как страшный сон (скорее это Вы так говорите о POSIX ,) ), я лишь утверждал, что подобное утверждение о POSIX-совместимых регулярных выражениях звучит чересчур категоричным ,)
...
Рейтинг: 0 / 0
eregi
    #32813492
*
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
*
Гость
Я лишь привёл аргументы - насколько они весомы - это решать конечному пользователю, в частности - вопрошавшему ;)
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / eregi
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]