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

Форум PHP

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

 

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

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

тема: как сделать исключение? плиииз. =(
 
 автор: Binura   (03.06.2007 в 19:19)   письмо автору
 
 

например, разрешаю цифры 1 4 6 9 0, и буквы а ь о з в г а с.
вот мне нужно сделать условие, если строка содержит другие символы, кроме этих, то выводит "Ошибка!!!"

таких символов может быть много... чуть ли не весь алфавит... неужели, все через || делать??? =( должна быть какая то функция...

   
 
 автор: Unkind   (03.06.2007 в 19:24)   письмо автору
 
   для: Binura   (03.06.2007 в 19:19)
 


<?php
if(!preg_match("/^[14690аьозвгс]+$/""Строка"))
{
    echo(
    
"Hey! This string can contain only letters 'аьозвгс' and numbers '14690'!" 
    
);
}
?>


Можно задавать диапозоны символов: a-z. Но если и правда будет такой странный набор символов, то и правда придется писать весь "алфавит".

   
 
 автор: Binura   (03.06.2007 в 19:46)   письмо автору
 
   для: Unkind   (03.06.2007 в 19:24)
 

=( это будет ужасно... тогда думаю сделать через цикл.
помгоите прально составить...
сначала делаем массив из символов,
потом перебором проверяем наличие каждого символа, и при первом обнаружении, выводить ошибку... =))) как то так.....

   
 
 автор: Unkind   (03.06.2007 в 19:50)   письмо автору
 
   для: Binura   (03.06.2007 в 19:46)
 

А чем регулярные выражения не устраивают?

   
 
 автор: Binura   (03.06.2007 в 20:19)   письмо автору
 
   для: Unkind   (03.06.2007 в 19:50)
 

preg_match??? он должен вернуть этот символ если есть... работать надо с каждым символом отдельно... а чтоб работать с каждым символом надо через цикл пропустить ...

   
 
 автор: Unkind   (03.06.2007 в 20:24)   письмо автору
 
   для: Binura   (03.06.2007 в 20:19)
 

preg_match может вернуть только int 0 или int 1. В крайней случае boolean(false).
http://php.net/preg_match

Не надо никаких циклов. Я уже показал решение, в котором проверяется ряд символов, что Вы привели в первом посте.

   
Rambler's Top100
вверх

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