Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум Регулярные Выражения

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Класс \w в Unix
 
 автор: Adj   (20.01.2010 в 21:05)   письмо автору
 
 

Сделал сайт, который проверял на домашней машине с WinXP+Denver.
Стал размещать его на хостинге с ОС Debian.
Появились разного рода проблемы.

Одна из них.
Для проверки вводимых данных есть конструкция:
if ( !preg_match('/^[\w. _-]{1,128}$/', $name) ) {...код...}

которая с русскими символами работала дома, но не работает на хостинге.

Экспериментально было выяснено, что на хостинге класс \w обозначает только латинские символы и цифры. Это особенности Unix-систем или что-то другое?

  Ответить  
 
 автор: GeorgeIV   (21.01.2010 в 10:01)   письмо автору
 
   для: Adj   (20.01.2010 в 21:05)
 

"word" символ - это произвольная цифра, буква или символ подчеркивания, проще
 говоря, любой символ, который может являться частью 'слова' в Perl. Определение букв и
 цифр управляется символьными таблицами, с которыми PCRE был собран. И, как
 следствие, эти наборы могут отличаться в различных локализированных дистрибутивах
. Например, в локали "fr" (Франция) некоторые символы с кодом выше 128 используются для
 записи ударных символов и, соответственно, соответствуют маске \w. 


это может быть причиной

  Ответить  
 
 автор: Adj   (21.01.2010 в 11:31)   письмо автору
 
   для: GeorgeIV   (21.01.2010 в 10:01)
 

Понял, спасибо. Будем переделывать.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования