Velvet
 
Newbie
 
 
 
 
Сообщения: 4
 
Зарегистрирован: 1.2.2004
 Город: Красноярск
 
Пользователя нет на форуме
  
 
 | 
  когда размещено 10.2.2005 в 18:10 | 
 
 | 
 
 
 | 
Регулярные выражения и русские буквы 
 
 
Доброго времени суток. 
 
Имеется простенькая функция: 
 
function valid_str ($str){ 
if (preg_match('/^([[:alpha:]])*$/',$str)) return true; 
else return false; 
 
Дома на серваке работает нормально. Здесь, на 209.123.8.188 на русские буквы выдает false. 
 
Подскажите, пожалуйста, как побороть?
 | 
| 
 | 
support
 
 
 | 
  когда размещено 10.2.2005 в 20:31 | 
 
 | 
 
 
 | 
 
 
ну попробуйте предварительно локаль установить 
setlocale (LC_ALL, 'ru_RU.cp1251'); 
если не поможет - тогда даже не знаю... 
 
[Изменено 10.2.2005 от support]
 | 
| 
 | 
Анонимный
 
Не зарегистрирован
 
 
 
 
Сообщения: N/A
 
Зарегистрирован: N/A
 
Пользователя нет на форуме
  
 
 | 
  когда размещено 24.2.2005 в 16:47 | 
 
 | 
 
 
 | 
 
 
У нас тоже не работает. Установка локали не помогла. 
Устанавливал вот так: 
setlocale (LC_CTYPE, "ru_RU.cp1251" ; 
и вот так: 
setlocale(LC_CTYPE,"ru_RU.CP-1251" ; 
 
Раньше вроде работало, но не уверен. 
 
Например не работает функция strtoupper с русскими буквами. 
Не работает preg_replace  с ключиком  i - то есть если я хочу чтобы не было разницы с регистром букв.  
Если искать регекспом просто русское слово то находит. А вот регистр букв не учитывает.  
 
Логин lotokcom.
 | 
| 
 | 
Анонимный
 
Не зарегистрирован
 
 
 
 
Сообщения: N/A
 
Зарегистрирован: N/A
 
Пользователя нет на форуме
  
 
 | 
  когда размещено 24.2.2005 в 16:55 | 
 
 | 
 
 
 | 
 
 
Решил ! 
 
setlocale (LC_ALL, array ("ru_RU.CP1251", "rus_RUS.1251" ); 
 
Логин lotokcom.
 | 
| 
 | 
Анонимный
 
Не зарегистрирован
 
 
 
 
Сообщения: N/A
 
Зарегистрирован: N/A
 
Пользователя нет на форуме
  
 
 | 
  когда размещено 24.2.2005 в 16:57 | 
 
 | 
 
 
 | 
 
 
Что то форум смайлики не тудж вставляет. 
Подробнее как ни странно здесь. Комент от 18 января 2005 
 
 http://ua.php.net/setlocale
 | 
| 
 |