我已经尝试和测试了很多youtube的url正则表达式,其中很多都能用fine...but,我有一个问题:
http://www.youtube.com/watch?v=kdyo-up3Cp0和
http://www.youtube.com/watch?v=kdyo-up3Cp0asdffg所有的正则表达式对它们都能正常工作,它们给出相同的视频...
问题是,只使用了v=后面的11个字符,再向右移动就会生成相同的视频...
有没有人能为此做一个周转的正则表达式?并在可能的情况下将其包含在此正则表达式中?
v=后面任何超过11个字符的字符对我来说都是无效的。
(?:http|https|)(?::\/\/|)(?:www.|)(?:youtu\.be\/|youtube\.com(?:\/embed\/|\/v\/|\/watch\?v=|\/ytscreeningroom\?v=|\/feeds\/api\/videos\/|\/user\S*[^\w\-\s]|\S*[^\w\-\s]))([\w\-]{11})[a-z0-9;:@?&%=+\/\$_.-]*发布于 2013-12-06 19:27:10
(?:http|https|)(?::\/\/|)(?:www.|)(?:youtu\.be\/|youtube\.com(?:\/embed\/|\/v\/|\/watch\?v=|\/ytscreeningroom\?v=|\/feeds\/api\/videos\/|\/user\S*[^\w\-\s]|\S*[^\w\-\s]))([\w\-]{11})如果只想验证最后11个字符是否存在,请尝试此操作。
https://stackoverflow.com/questions/20422512
复制相似问题