使用preg_match在php中过滤youtube URLS

时间:2012-02-07 16:15:24

标签: php youtube preg-match

我使用以下代码将我的帖子中的youtube网址转换为嵌入式视频。但是,如果我使用https://和youtu.be格式添加URL,则无效。我该如何解决?

  $youtube_url = "/http:\/\/www\.youtube\.com\/watch\?(.*?)v=([a-zA-Z0-9_\-]+)(\S*)/i";
  if (preg_match($youtube_url, $text, $youtube)){
   // echo "match found";
  }

1 个答案:

答案 0 :(得分:3)

Regexp看起来像/https?:\/\/(?:www\.)?youtu(?:\.be|be\.com)\/watch(?:\?(.*?)&|\?)v=([a-zA-Z0-9_\-]+)(\S*)/i

s?表示可选的s字符。在这个正则表达式中没有其他评论。