<MyRusakov.ru />

PHP и MySQL с Нуля до Гуру 2.0

PHP и MySQL с Нуля до Гуру 2.0

Данный курс научит Вас программировать на самом популярном Web-языке в мире - PHP. Курс состоит из 11 разделов, в которых с нуля рассказывается и показывается процесс написания различных скриптов на PHP.

В курсе Вы узнаете всю необходимую теоретическую часть, а также увидите массу практических примеров, в том числе, и из моей практики.

Почти к каждому уроку идут упражнения.

Просмотрев данный курс, Вы сможете создавать абсолютно любые PHP-сайты любой сложности.

Подробнее
Подписка

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Каким движком Вы предпочитаете пользоваться?

Форум сайта MyRusakov.ru

Только русский текст (регулярные выражения)
24.10.2012 15:06:12 Только русский текст (регулярные выражения) Сообщение #1
Default

Default

Эксперт

Эксперт

Дата регистрации:
12.06.2012 15:20:27

Сообщений: 102

Всем привет. наконец-то есть свободное время и решил посмотреть РВ.
Проблема с русским текстом

<?php
mb_internal_encoding("UTF-8";

$a = "привет";

if(preg_match("/^[а-я]{2,6}$/",$a)){
echo $a;
}else{
echo "Совпадений нет!<p>";
}

echo mb_strlen($a); // 6
?>

так понимаю это кодировка, хотя в .htaccess, httpd.conf и в самом файле кодировку установил utf-8, да и выводит число символов столько сколько есть. в чем может быть проблема? если указывать русское слово состоящие из 3 букв, то нормально все работает, если больше 3, то совпадений не найдено . спасибо
Профиль Ответить
24.10.2012 19:36:21 Только русский текст (регулярные выражения) Сообщение #2
Admin

Admin

Администратор

Администратор

Дата регистрации:
27.05.2010 21:23:42

Сообщений: 3063

А с латиницей пробелм не возникает? Попробуйте в конец добавить модификатор для юникода вот так: '/^[а-я]{2,6}$/u'
Профиль Ответить
24.10.2012 20:02:07 Только русский текст (регулярные выражения) Сообщение #3
Default

Default

Эксперт

Эксперт

Дата регистрации:
12.06.2012 15:20:27

Сообщений: 102

Спасибо Михаил, помогло. Сделал то, что хотел

<?php mb_internal_encoding("utf-8";

$a = "Система Server_";
if(preg_match("/^[а-яА-Яa-zA-Z0-9]{1}[а-яА-Яa-zA-Z0-9_\s]{1,14}$/u",$a))
echo $a;
else
echo "Совпадения не найдены";

?>
Профиль Ответить