preg_match проверка на наличие строки...

kaibest

Новичок
preg_match проверка на наличие строки...

нужно проверить есть ли в строке $str последовательность символов "http://". пытался делать с помощью рег. выражений, многими способами, но что-то не работает. не могу разобраться.

PHP:
if(!preg_match("/^(http:\/\/)?[-0-9a-z._]*.\w{2,4}[:0-9]*$/", $str)) {
echo "\"http://\" not found";
}
собственно и все. программа пропускает этот код, даже если $str не содержит "http://".

из статьи про рег. выражения я не смог найти значения символов "?" и ":". не подскажите?
 

Andreika

"PHP for nubies" reader
нужно проверить есть ли в строке $str последовательность символов
strpos и компания

сей код кажется для другого применялся.. в любом случае ":" это двоеточие, после которого вероятно идет порт, "?" означает - есть http:// - хорошо, нет - ну и бог с ним... а что означает вся эта регулярка не очень понятно

http://ru2.php.net/preg_match
там сбоку сверху 2 ссылки, особенно Синтаксис регулярных выражений
 
Сверху