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

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

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

 

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

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

тема: Непонятное поведение функции
 
 автор: Владимир55   (20.01.2012 в 19:32)   письмо автору
 
 

 <?php
   $a 
"Проба z";
    if(
ereg("[^a-z]"$a)) echo("<br>1 " $a);
    if(
ereg("[a-z]"$a))  echo("<br>2 " $a);


Получаем:
1 Проба z
2 Проба z


А в такой варианте:
<?php
    $a 
"Проба ";
    if(
ereg("[^a-z]"$a)) echo("<br>1 " $a);
    if(
ereg("[a-z]"$a))  echo("<br>2 " $a);


Получаем:
1 Проба 


Почему так? Конструкция ereg("[^a-z]", $a) неработоспобна?

  Ответить  
 
 автор: Sfinks   (20.01.2012 в 20:21)   письмо автору
 
   для: Владимир55   (20.01.2012 в 19:32)
 

Все логично. Ваши РВ как читаются по русски?
"[^a-z]" -если есть НЕ латинские буквы
"[a-z]" -если есть латинские буквы
Соответственно
"Проба z" подходит и под 1 и под 2, а "Проба " только под 1

  Ответить  
 
 автор: Владимир55   (20.01.2012 в 20:29)   письмо автору
 
   для: Sfinks   (20.01.2012 в 20:21)
 

Спасибо, теперь понятно!

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

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