как решить проблемму с eregi

Тема в разделе "PHP", создана пользователем асс, 10 янв 2009.

Статус темы:
Закрыта.
Модераторы: latteo
  1. асс

    асс

    Регистр.:
    13 окт 2006
    Сообщения:
    756
    Симпатии:
    221
    Задача такая. есть переменная $text_max
    на ход она должна получать любые буквы цифры, пробелы дефис
    HTML:
     if(!eregi("^[А-Яа-яA-Za-z ]{2,200}$", $text_max))        
    
    но этот код не пашет, подскажите как сделать правильно.
    мне надо 1-200 слов чтоб было .:)
     
  2. PHP_Master

    PHP_Master

    Регистр.:
    3 фев 2008
    Сообщения:
    2.647
    Симпатии:
    591
    Отказаться от ereg - эти функции удаляются из языка, в будущем будут только PCRE (preg_*).
    PHP:
    if(!preg_match('/[^A-ZА-Я0-9- ]/iu'$text))
    Это код на проверку соответствия текста патерну. Докрути как тебе надо.
     
    асс нравится это.
  3. асс

    асс

    Регистр.:
    13 окт 2006
    Сообщения:
    756
    Симпатии:
    221

    тоесть preg_match решит все проблеммы?
    А я мучаюсь с этим ereg :D
    завтра заюзаю.
     
  4. PHP_Master

    PHP_Master

    Регистр.:
    3 фев 2008
    Сообщения:
    2.647
    Симпатии:
    591
    От тебя зависит - это же не волшебная палочка :D
    ereg* - POSIX регэкспы, будут удалены начиная с PHP6.
    preg* - PCRE, больше возможностей и быстрее работают.

    Не совсем понятно - ты пытаешься рэгекспом ограничить текст?
     
  5. admLoki

    admLoki генератор случайного PHP

    Регистр.:
    14 сен 2006
    Сообщения:
    481
    Симпатии:
    93
    Код:
    /[\w\x20\x2d]+/ui
    
    Приведенная тобой регулярка не будет работать с UTF-8 даже если ты используешь preg_*.
     
  6. PHP_Master

    PHP_Master

    Регистр.:
    3 фев 2008
    Сообщения:
    2.647
    Симпатии:
    591
    Это мне или ТС?
     
  7. admLoki

    admLoki генератор случайного PHP

    Регистр.:
    14 сен 2006
    Сообщения:
    481
    Симпатии:
    93
    ТС. Да и тебе тоже. Если код с регуляркой в win-1251 то UTF-8 текст он не отпарсит.
     
  8. PHP_Master

    PHP_Master

    Регистр.:
    3 фев 2008
    Сообщения:
    2.647
    Симпатии:
    591
    В моём примере есть ключик u :p
     
  9. admLoki

    admLoki генератор случайного PHP

    Регистр.:
    14 сен 2006
    Сообщения:
    481
    Симпатии:
    93
    В твоем примере есть рейндж а-я, который не обработается.
     
  10. PHP_Master

    PHP_Master

    Регистр.:
    3 фев 2008
    Сообщения:
    2.647
    Симпатии:
    591
    Странно, у мну работает (правда я ничего кроме utf не использую).
     
Статус темы:
Закрыта.