【问题标题】:javascript regexp for validating youtube embed url用于验证 youtube 嵌入 url 的 javascript 正则表达式
【发布时间】:2015-01-31 16:46:09
【问题描述】:

如何在 javascript 中编写正则表达式来验证 youtube 嵌入链接? 就像我想让用户只输入 youtube embed url。我可以让正则表达式变量独立吗?我的意思是网址有一些功能,如控件、显示信息等。

如下网址有效

  • www.youtube.com/embed/tqJDf7IB4HI
  • www.youtube.com/embed/tqJDf7IB4HI?rel=0&controls=0

两者都有效

但如果url具有不同的域或任何其他嵌入url,则无效。

【问题讨论】:

    标签: javascript regex validation youtube


    【解决方案1】:
    function testURL(url) {
     return /www.youtube.com\/embed\/[A-z0-9]+/.test(url);
    }
    
    alert(testURL("www.youtube.com/embed/tqJDf7IB4HI?rel=0&controls=0"));
    

    【讨论】:

      【解决方案2】:

      出于验证目的,我建议您使用锚点。 \S* 匹配零个或多个非空格字符。

      ^www\.youtube\.com\/embed\/\S*$
      

      DEMO

      > /^www\.youtube\.com\/embed\/\S*$/.test('www.youtube.com/embed/tqJDf7IB4HI?rel=0&controls=0')
      true
      > /^www\.youtube\.com\/embed\/\S*$/.test('www.youtube.com/embed/tqJDf7IB4HI')
      true
      

      【讨论】:

      • 在开头添加http://,如^http:\/\/www\.,或^http:\/\/youtube^(http:\/\/)?www\.,选择满足您需求的那个。
      猜你喜欢
      • 2012-11-08
      • 1970-01-01
      • 2012-01-24
      • 2013-08-24
      • 2012-03-29
      • 2011-02-27
      • 1970-01-01
      • 2011-06-17
      • 1970-01-01
      相关资源
      最近更新 更多