我想从此网址找到扩展程序.html
:
http://testasp.vulnweb.com/Templatize.asp?item=html/about.html
答案 0 :(得分:2)
也许是这样的:
URI.parse(url).query[/\.\w+/]
答案 1 :(得分:0)
Ruby有URI模块,它是标准发行版的一部分,加上Addressable gem:
url = 'http://testasp.vulnweb.com/Templatize.asp?item=html/about.html'
require 'uri'
uri = URI.parse(url)
queries = Hash[uri.query.split('&').map{ |q| q.split('=') }]
puts queries['item']
require "addressable/uri"
uri = Addressable::URI.parse(url)
puts uri.query_values['item']
两者都会输出:
html/about.html
跑步时。
URI很方便,但是Addressable非常强大且功能齐全。如果我需要进行大量的URL解析或操作,可以使用Addressable。
获得html/about.html
后,您可以通过多种方式提取扩展程序:
path = 'html/about.html'
path[/(\..+)$/, 1] # => ".html"
path.split('.').last # => "html"
File.extname(path) # => ".html"
请注意,使用split
会移除.
,因此需要再次将html
添加到其中。
答案 2 :(得分:-2)
大多数编程语言的通用答案(我不是红宝石) -
String.substring(String.lastIndexOf("."), String.length);