Wildcards a lot like named parameters, but they match all characters up to the next maching character. A wildcard can contain one or more slash characters, so they can be used to match larger portions of the URL than a named parameter can. Any wildcard parameters will be stored in params[:splat]. If there are more than one wildcard parameters, then params[:splat] will be an array.
Since wildcards can match so much, you have to be careful when using them. A badly designed wildcard URL can block many of your other URL handlers.
#!/usr/bin/env ruby
require 'rubygems'
require 'sinatra'
get '/getfile/*/:format' do
"You requested #{params[:splat]} in #{params[:format]} format"
end
In this example, a full path to a file is captured using a wildcard. The wildcard matches on the final slash in the URL, followed by a normal named URL specifying the format. So, the wildcard can match long strings in a URL like /getfile/really/long/path/to/a/file.txt/xml.

