Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > Проверка переменной на содержание


Автор: Vreden 3.8.2006, 15:17
есть переменная, нужно проверить следующее:
 - встречаются ли в переменной символы кроме английских и русских букв, и кроме 0-9
 - начинается ли значение переменной с цифры
 - а также присутсвуют ли в переменной более трех одинаковых символов подряд
Как осуществить эту проверку, подскажите пожалуйста кодом?

 smile 

Автор: GiV 3.8.2006, 15:49
Код

# встречаются ли в переменной символы кроме английских и русских букв, и кроме 0-9
if ( preg_match('~[^a-zA-Zа-яА-Я0-9]+~', $var) ) {
    echo "Non alphanumeric symbols";
}

# начинается ли значение переменной с цифры
if ( is_numeric( $var[0] ) {
    echo "Number at the begin";
}

# либо
if ( preg_match('~^\d~', $str) ) {
    echo "Number at the begin";
}

#присутсвуют ли в переменной более трех одинаковых символов подряд
if ( preg_match_all('~(.)\\1\\1\\1~i', $str) ) {
    echo "More then 3 ordered characters";
}


Один из вариантов решения.

Автор: skyboy 3.8.2006, 16:12
Цитата(Vreden @  3.8.2006,  15:17 Найти цитируемый пост)
в переменной
=="в значении переменной" или =="в имени переменной"? Как понимать-то? Я уж подумал, что речь про имяч переменной идёт...

Автор: GiV 3.8.2006, 16:20
Логичнее наверное содержимое проверять =) потому как имя мы придумываем сами, за редким исключением генерируем в скриптах.

Автор: Vreden 3.8.2006, 16:31
Цитата

=="в значении переменной" или =="в имени переменной"? Как понимать-то? Я уж подумал, что речь про имяч переменной идёт...


конечно же в значении переменной!!!

Спасибо GiV, еще не проверил, но сейчас попробую.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)