regex - 正则表达式:匹配youtube链接,但不匹配youtube嵌入代码

标签 regex youtube

请问你能帮帮我吗。我需要匹配这样的字符串的正则表达式:

http://www.youtube.com/watch?v=eE4qPqMYsp8

但不是这个:
<object width="500" height="700"><param name="movie" value="http://www.youtube.com/v/eE4qPqMYsp8&amp;hl=ru&amp;fs=1&amp;rel=0" /><param name="wmode" value="transparent" /><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><embed src="http://www.youtube.com/v/eE4qPqMYsp8&amp;hl=ru&amp;fs=1&amp;rel=0" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" wmode="transparent" width="500" height="700">

我有这个代码:
%(?:(http://){0,1}(www.){0,1}youtube(?:-nocookie)?\.com/(?:[^/]+/.+/|(?:v|e(?:mbed)?)/|.*[?&]v=)|(http://){0,1}(www.){0,1}youtu\.be/)([^"&?/ ]{11})%

我不知道如何排除一些参数。

最佳答案

这样的表达式怎么样:

(?:https?://)?(?:www\.)?youtube\.com/watch.+?\bv=[a-zA-Z0-9]+

您当然可以添加更多选项(例如(?:-nocookie)),但它可能已经足够具体了,就像这样。

关于regex - 正则表达式:匹配youtube链接,但不匹配youtube嵌入代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21677738/

相关文章:

java - 使用 Spring 和 Thymeleaf 嵌入具有精确时间的 YouTube 视频

php - 带有消息 'Protocol "https 的 Google 服务身份验证 Google_IO_Exception 在 libcurl 中不受支持或禁用

python - python flask-ask 中的 Alexa youtube 技能

php - 如何从youtube播放列表中获取时间值(value)

java - 正则表达式不应该发生灾难性的回溯

java - 用于匹配 javadoc 片段的正则表达式

Python:替换重音符号(é 到 e)、删除 [^a-zA-Z\d\s] 和 lower() 的有效方法

Java正则表达式,匹配除

regex - 用 gVim 一起替换文本组

ios - youtube API 不工作 ios