2

我正在使用 Rails 控制器。我调用一个wget命令system(wget ...),我想要一个指示下载文件的文件名的变量。

例如,对于wget google.com、 或wget www.google.com、 或wget www.google.com/、 或wget http://www.google.com,返回的名称应该是index.html

对于example.com/firstpage.html,返回名称应该是firstpage.html

如您所见,我不能简单地在最后一个反斜杠后去掉名称。我该怎么做?

4

1 回答 1

1

正则表达式可以做到!

处理您使用正则表达式获得的字符串以查找最后一个 / 之后的所有内容

@url= 'http://example.com/firstpage.html'
@file = @url.scan(/[^\/]*$/i)

puts @file  #firstpage.html

此正则表达式还处理多个正斜杠,因此它也可以处理长 URL。

键盘示例和测试 ruby​​ 正则表达式的好地方

于 2012-11-12T01:23:45.247 回答