ruby – 如何更改此正则表达式以从未指定v参数的Youtube URL获取Youtube视频ID?

目前我正在使用此正则表达式从Youtube网址中提取视频ID:
url.match(/v=([^&]*)/)[1]

如何更改此设置,以便它还可以从此Youtube网址获取视频ID,该网址没有v参数:

http://www.youtube.com/user/SHAYTARDS#p/u/9/Xc81AajGUMU

谢谢阅读.

编辑:我正在使用ruby 1.8.7

解决方法

对于Ruby 1.8.7,这样做.
url_1 = 'http://www.youtube.com/watch?v=8WVTOUh53QY&feature=feedf'
url_2 = 'http://www.youtube.com/user/ForceD3strategy#p/a/u/0/8WVTOUh53QY'

regex = /youtube.com.*(?:\/|v=)([^&$]+)/
puts url_1.match(regex)[1] # => 8WVTOUh53QY
puts url_2.match(regex)[1] # => 8WVTOUh53QY

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...