我正在尝试验证我的应用程序的 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 Urls 变体:
- 有和没有 http://
- 有和没有 www。
- 使用网址 youtube.com 和 youtu.be
- 必须有 /watch?v=
- 必须具有唯一的视频字符串(在上面的示例中为“vpfzjcCzdtCk”)
但是,我认为我的逻辑不正确,因为由于某种原因它返回true为:(www.youtube.co/watch?v=vpfzjcCzdtCk
注意我用.co
and not写错了.com
)