« Разное



Для клиента
Пользователь:
Пароль:
 

Проверка русских символов в регулярных выражениях

Категория: / Mine блог / PHP (LAMP)
Один из часто задаваемых вопросов - как в никс окружении проверить регуляркой наличие кирилицы в строке.

$russian_str = "Тест";
if (preg_match("/^[".chr(0x7F)."-".chr(0xff)."_-]+$/",$russian_str))
{
   echo 'Это по-русски..';
} else {
   echo 'Это нет...';
}


На unix системах можно попробовать сменить локаль на setlocale(LC_ALL, 'ru_RU.CP1251');
и использовать кириллицу в чистом виде [а-яА-Я],

либо применять UTF модификатор (если код набран в UTF и проверяемый текст тоже UTF).

 
preg_match('@utf регулярное выражение@u');
 


Смотрите также:
Регулярные выражения для чайников.

@author: mihail
@date: Понедельник, 19 Февраль 2007


Комментарии : 4


4] Гость - 01:11, 19 Январь, 2012
Перерыл кучу сайтов, ничего путьнего не нашел. А ваш способ preg_match("/^[".chr(0x7F)."-".chr(0xff)."_-]+$/",$russian_str) работает на 5+. Спасибо за решение. Сайт в избранное!
3] Гость - 11:25, 23 Январь, 2010
ммм... Если работает, то большое спасибо
2] Гость - 17:22, 21 Октябрь, 2009
под виндой тоже работает, спасибо
1] Гость - 22:52, 16 Октябрь, 2008
вамвам
Комментировать:




Код подтверждения: *
Введите подтверждающий код, так же как он отображен на картинке.
Надоело разбирать числа на картинке? Зарегистрируся, докажи что ты не робот!

загрузка...

Фото форум - фотосъемка. . Медицинские справки всех видов: купить справку. . большие плюшевые медведи . Натуральный природный камень: искусственный отделочный камень.