我有一个名为images
的函数,它从远程网站返回一个图像网址数组。我这样用它:
return page.description || page.images[0]
当description
的{{1}}不存在时,它会返回数组中的第一个图像网址。我希望获得第一张带有page
或jpg
扩展名的图片,而不是其他任何内容。我怎么能这样做?
答案 0 :(得分:2)
images = ['http://example.com/a.html', 'http://example.com/image.jpg', 'http://example.com/image.png']
images.find { |url| url =~ /\.(jpg|png)$/i }
# => "http://example.com/image.jpg"
images.find { |url| url.downcase.end_with?('.jpg', '.png') }
# => "http://example.com/image.jpg"