在该我开发我需要认识到在以下格式的YouTube链路的系统中

  

[YouTube的] YouTube网址[/ YouTube的]

对于我到达该正则表达式的时刻:

#\[youtube\]http://www.youtube\.(.*)/watch\?v=([a-zA-Z0-9_-]*)\[\/youtube\]#s

但是这种模式不能识别的URL等

  

[YouTube的] http://www.youtube.com/观看?v = s3wXkv1VW54&设有= fvst [/ YouTube的]

请注意的特征= fvst

有些人可以帮助我认识的所有可能的YouTube网址?

有帮助吗?

解决方案

如何
|\[youtube\]http://www.youtube\.(.*?)/watch\?v=([a-zA-Z0-9_-]*)[%&=#a-zA-Z0-9_-]*\[\/youtube\]|s

编辑:改变正则表达式只保留影片ID括号内

其他提示

注意:结果 我上的网址进行不区分大小写的匹配(/ I)点击 。匹配任何东西;采用 \。而不是相匹配的URL点击 此外, “WWW”。在YouTube网址是可选的。点击 使用(\。[A-Z] +)的{1,2},而不是 “*”,以匹配 “.COM”, “.co.uk”,...之后 “YouTube” 的结果 点击 假设“&特征”部分是可选的,正则表达式是:结果

/\[youtube\]http:\/\/(www\.)?youtube(\.[a-z]+){1,2}\/watch\?v=([a-z0-9_-]*)(&feature=([a-z]+))?\[\/youtube\]/is

假设“&特征”部分是可选的,并且可以有其他的参数不是“特征”:

/\[youtube\]http:\/\/(www\.)?youtube(\.[a-z]+){1,2}\/watch\?v=([a-z0-9_-]*)(&([a-z]+)=([a-z0-9_-])+)*?\[\/youtube\]/is
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top