使用正则表达式验证 Youtube URL
我正在尝试验证我的应用程序的 YouTube 网址。
到目前为止,我有以下内容:
// Set the youtube URL
$youtube_url = "www.youtube.com/watch?v=vpfzjcCzdtCk";
if (preg_match("/((http\:\/\/){0,}(www\.){0,}(youtube\.com){1} || (youtu\.be){1}(\/watch\?v\=[^\s]){1})/", $youtube_url) == 1)
{
echo "Valid";
else
{
echo "Invalid";
}
我希望验证Youtube网址的以下变体:
- 带或不带 http://
- 带或不带 www。
- 使用 url youtube.com 和 youtu.be
- 必须有 /watch?v=
- 必须具有唯一的视频字符串(在上面的示例中,“vpfzjcCzdtCk”)
但是,我不认为我的逻辑是正确的,因为出于某种原因,它返回true:(请注意,我写错了,而不是www.youtube.co/watch?v=vpfzjcCzdtCk
.co
.com
)