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

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

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

 

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

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: проверка символов на своих местах

Сообщения:  [1-10]   [11-20] 

 
 автор: BinLaden   (27.05.2008 в 22:52)   письмо автору
 
   для: AcidTrash   (27.05.2008 в 22:23)
 

Теперь ясно. Интересная у Вас форма ответа, я должен сказать.

   
 
 автор: AcidTrash   (27.05.2008 в 22:23)   письмо автору
 
   для: BinLaden   (26.05.2008 в 15:21)
 

>Я не понимаю о чём Вы говорите.
>Был вопрос:
> а что сделает +?
>Я так понимаю, что Вы дали на него такой ответ:
> То, что это не один символ


Имеется ввиду, что после символов yn должно быть число от 0 до, скажем к примеру до 1000.
Если использовать диапозон [0-9] или эквивалент \d, то после yn обязательно должно быть число, но от 0 до 9, т.е один числовой символ(скажем 10 уже не пройдет).
Если после [0-9], будет стоять +, то это означает, что должно быть число от 0 до 9 и более.
Если поставить *, то будет означать, что число после yn может быть, а может и не быть, в любом случае условие пройдет.

   
 
 автор: BinLaden   (27.05.2008 в 00:55)   письмо автору
 
   для: Vertex   (26.05.2008 в 22:06)
 

Да, но "{1}?" - лишнее в шаблоне.

   
 
 автор: Vertex   (26.05.2008 в 22:06)   письмо автору
 
   для: BinLaden   (26.05.2008 в 15:21)
 

блин, точно , просто y и n проходят..... а этого быть, судя по всему, не должно.
Значит если моё выражение будет выглядеть так:
$data='ny7'; 
if(!preg_match("/^[n|y]{1}?[0-9]+$/",$data)){  
      echo("нет"); 
  } else {  
    echo("да");   
}  
//нет 
оно удовлетворит всем поставленным автором задачам?

   
 
 автор: BinLaden   (26.05.2008 в 15:21)   письмо автору
 
   для: AcidTrash   (26.05.2008 в 12:25)
 

> То что не нуль показывает [0-9] -это и будет, что не нуль, а 1 символ(в данном случае цифра от 0 до 9)

Я не понимаю о чём Вы говорите.

Был вопрос:
> а что сделает +?

Я так понимаю, что Вы дали на него такой ответ:
> То, что это не один символ

   
 
 автор: AcidTrash   (26.05.2008 в 12:25)   письмо автору
 
   для: BinLaden   (26.05.2008 в 11:53)
 

То что не нуль показывает [0-9] -это и будет, что не нуль, а 1 символ(в данном случае цифра от 0 до 9)

   
 
 автор: BinLaden   (26.05.2008 в 11:53)   письмо автору
 
   для: AcidTrash   (25.05.2008 в 20:29)
 

> То, что это не один символ.
То, что это не нуль символов.

   
 
 автор: BinLaden   (26.05.2008 в 11:51)   письмо автору
 
   для: Vertex   (25.05.2008 в 22:07)
 

Тогда под Ваш шаблон будут подходить выражения типа "y", "n", т.е. без цифр.

   
 
 автор: AcidTrash   (25.05.2008 в 22:41)   письмо автору
 
   для: Nevi   (20.05.2008 в 16:24)
 

Возможно вас устроит выражение
<?php
$data
='y7';
if(!
preg_match("/^[y+?n+?][\d]+$/",$data)){
      echo(
"Нет");
  } else {
    echo(
"Да");
}
?>

   
 
 автор: Vertex   (25.05.2008 в 22:07)   письмо автору
 
   для: AcidTrash   (25.05.2008 в 21:27)
 

дык примеры же в самом первом посте=)

   

Сообщения:  [1-10]   [11-20] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

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