如何在javascript中编写正则表达式来验证youtube嵌入链接? 喜欢我想让用户只输入youtube embed url。我可以让regexp变量独立吗?我的意思是网址有一些功能,如控件,节目信息等。
如以下网址有效
www.youtube.com/embed/tqJDf7IB4HI
www.youtube.com/embed/tqJDf7IB4HI?rel=0&controls=0
两者都有效
但如果网址具有不同的域或任何其他嵌入网址,则无效。
答案 0 :(得分:2)
function testURL(url) {
return /www.youtube.com\/embed\/[A-z0-9]+/.test(url);
}
alert(testURL("www.youtube.com/embed/tqJDf7IB4HI?rel=0&controls=0"));
答案 1 :(得分:1)
出于验证目的,我建议您使用锚点。 \S*
匹配零个或多个非空格字符。
^www\.youtube\.com\/embed\/\S*$
> /^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