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

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

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

 

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

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

тема: Не работает модификатор i
 
 автор: averkov   (07.09.2013 в 15:05)   письмо автору
 
 

Проверяю текст, который должен состоять из кириллицы + цифры:
preg_match("/^[\а-яё А-ЯЁ0-9_\.\,]+$/", $text1) // работает, всё ОК

Если использовать модификатор "i":
preg_match("/^[\а-яё 0-9_\.\,]+$/i", $text1) // Не работает 

Почему?
Или я гдето допускаю ошибку? Заранее благодарен.

  Ответить  
 
 автор: confirm   (07.09.2013 в 15:52)   письмо автору
 
   для: averkov   (07.09.2013 в 15:05)
 

А что это в начале символьного класса, должен обрабатываться и \ , тогда почему он не экранирован? Пробел тоже обрабатывать, зачем вы им в первом случае разбиваете алфавит? И вообще лучше писать \s. Запятую экранировать не надо.
А чтобы без учета регистра, установите локаль русскую, будет работать.

  Ответить  
 
 автор: averkov   (07.09.2013 в 16:41)   письмо автору
 
   для: confirm   (07.09.2013 в 15:52)
 

Я допустил ошибку - после открывающей квадратной скобки слеш поставлен ошибочно (в обоих случаях). Приношу свои извинения. Я не знаю что такое - "локаль русская"

  Ответить  
 
 автор: confirm   (07.09.2013 в 16:43)   письмо автору
 
   для: averkov   (07.09.2013 в 16:41)
 

http://www.php.net/manual/ru/function.setlocale.php

  Ответить  
 
 автор: averkov   (07.09.2013 в 19:40)   письмо автору
 
   для: confirm   (07.09.2013 в 16:43)
 

Громадное спасибо! Действительно, "i" в латинице работает без проблем, а с кириллицей не действует.

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

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