首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Livevalidation设置youtube url验证器

Livevalidation设置youtube url验证器
EN

Stack Overflow用户
提问于 2011-03-09 07:26:11
回答 3查看 1.5K关注 0票数 2

我正在使用livevalidation验证一个表单输入域,它要求输入youtube视频的url,并且我正在尝试创建一个url规则,以便它在用户输入http://www.youtube.com/watch?v=11chars时进行验证。我尝试在上面的链接中组合partialmatch选项,如下所示:

代码语言:javascript
复制
var link = new LiveValidation('link');
link.add( Validate.Inclusion, { within: [ 'http://' , 'www', 'youtube.com/watch?v=' ], partialMatch: true } )

并将其与以下长度示例相结合:

代码语言:javascript
复制
var link = new LiveValidation('link');
link.add( Validate.Length, { minimum: 50, maximum: 50 } );

但很明显,这看起来很笨拙,我认为如果工作得当,它不会很有效。

有没有可能结合上面链接中的一些例子来正确地验证youtube的url?谢谢你的帮助!

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-03-09 07:37:14

Validate.Format与正则表达式一起使用:

代码语言:javascript
复制
 link.add(Validate.Format, { pattern: /^http\:\/\/www\.youtube\.com\/watch\?v=[a-z0-9]{11}$/i });

编辑:要验证带有附加查询参数的链接,可以使用如下代码:

代码语言:javascript
复制
/^http\:\/\/www\.youtube\.com\/watch\?v=[a-z0-9]{11}(&.*)?$/i
票数 0
EN

Stack Overflow用户

发布于 2011-03-09 08:09:31

代码语言:javascript
复制
link.add(Validate.Format, { pattern: /^http\:\/\/www\.youtube\.com\/watch\?v=[a-zA-Z0-9---_]{11}$/ }); 

这行得通!我不知道我可以使用正则表达式来做这件事,所以我稍微调整了@gilly3代码

票数 0
EN

Stack Overflow用户

发布于 2011-04-23 18:11:52

这里有一个正则表达式,它可以验证你的JavaScript和PHP,并且可以验证三种URL:经典的(?v=),AJAXed的(#!v=)和短版本(youtu.be)。它还支持国际URL。

代码语言:javascript
复制
/http:\/\/(?:youtu\.be\/|(?:[a-z]{2,3}\.)?youtube\.com\/watch(?:\?|#\!)v=)([\w-]{11}).*/gi

Snipplr上的代码片段:)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5239604

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档