Есть код
$url = "youtube.com/watch?v=ТУТ КАКОЙ ТО ТЕКСТ";
С помощью рег.выражения нужно проверить задана ли такая ссылка, вместо "ТУТ КАКОЙ ТО ТЕКСТ" должно быть что угодно, что допускается в ссылке ($url), любой текст или цифры
$url2 = "youtube.com/watch?v=";
preg_match("#^(https?://)?youtube.com/watch\?v=.*$#", $url2);
Данный код почему то выдает true даже на $url2, хотя так не должно быть
Данный код почему то выдает true даже на $url2, хотя так не должно быть
Это происходит из-за минимальности квантификатора *
, который делает дальнейшее совпадение в подстроке не обязательным, даже если совпадение есть. Замените *
на +
, и шаблон будет учитывать подстроку после v=
:
$str = 'youtube.com/watch?v=';
$patt = '~^(?:https?://)?youtube.com/watch\?v=.+$~';
var_dump( (bool) preg_match($patt, $str) );
Результат:
boolean false
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Не могу понять, чего когда голосуешь, не отображается результат?
Есть код который выводит значения только одного элемента (wdo_tab_title):
Нужно подключится к базе данных sqliteВыдает ошибку: