[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Помогите с кирилицей в регулярке
Magistr
If (!preg_match("%^[а-яА-Яa-zA-Z0-9]{4,15}+$%",$login))

Не пропускает килрилицу, символы латинского алфавита идут как нада.
Подскажыте в чем проблема?
twin
Модификатор u наверное надо поставить?

_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
Magistr
twin
Точно работает B)
Вот правильный код:
If (!preg_match("%^[а-яА-Яa-zA-Z0-9]{4,15}+$%u",$login))

Ет исправил появилась ещо одна загвостка с функцыей
ucwords()

Регистр в кирилице не хочет менять :blink:
Подскажыте што делать?
Если ставить модификатор то куда?
Magistr
Winston
Спасибо решыл проблему, вот так:
$login=mb_convert_case($login, MB_CASE_TITLE, 'UTF-8');
Aeq
ё забыли. оно не входит в диапазон а-я
Magistr
Aeq
Што забыли? Можна по конкретней?
n13b123
Цитата (Magistr @ 24.12.2013 - 18:44)
If (!preg_match("%^[а-яА-Яa-zA-Z0-9]{4,15}+$%",$login))

к чему тут в конце +

можно в таком видет ^[ёа-я\w]{4,15}$ НО пропустит _
bestxp
а вы знаете что то что вы тут указали входит в диапазон \w и не париться
станет что-то

%^\w{4,15}+$%
Zzepish
а еще в регулярке в кирилице надо ставить ёЁ отдельно
А еще лучше запили так:
"%^[а-яёa-z0-9]{4,15}+$%ui"
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.