Ruby 按文件扩展名选择字符串

Ruby 按文件扩展名选择字符串,ruby,string,Ruby,String,我有一个逗号分隔的字符串,它包含两个URL,如下所示: "http://bucket.s3.amazonaws.com/uploads/45b3ab5f-9cb2-4696-91ea-5e2b8a3ef84d/c2aaecbaddfbd246c2b36d3e03144aad.mp4, http://bucket.s3.amazonaws.com/uploads/45b3ab5f-9cb2-4696-94ea-5e2b8a3ef84d/ca503efd6e59f2e887a1c52a14024v6

我有一个逗号分隔的字符串,它包含两个URL,如下所示:

"http://bucket.s3.amazonaws.com/uploads/45b3ab5f-9cb2-4696-91ea-5e2b8a3ef84d/c2aaecbaddfbd246c2b36d3e03144aad.mp4, http://bucket.s3.amazonaws.com/uploads/45b3ab5f-9cb2-4696-94ea-5e2b8a3ef84d/ca503efd6e59f2e887a1c52a14024v6e.webm" 
我想写一个方法,允许我根据文件扩展名(不是位置…有时位置会改变)获取webm URL和mp4 URL

我想知道如何使用Ruby按文件扩展名选择每个值的完整URL。

使用拆分字符串,并使用以下方法筛选出所需的字符串:


如何删除周围的括号?@cmw,
Array#select
返回一个数组。您可以使用
[]
url。选择{url | url.end_with?'.mp4'}[0]
获取第一项。
s = "http://bucket....aad.mp4, http://bucket...v6e.webm" 
urls = s.split(',')
urls.select { |url| url.end_with? '.mp4' }  # `String#end_with?` to match extension
# => ["http://bucket....aad.mp4"]