Search code examples
rubyregexsinatra

Trouble with regex for Ruby


I'm trying to make a regular expression for a route. It's supposed to admit routes like:

/prov/17/dist/24/agregarDepartamento
/lista/agregarDepartamento
/prov/20/agregarDepartamento

This is my ruby code:

get ([prov/...]*[dist/...]*agregarDepartamento+) do
   #process
end

but it's not working. How can I do this?


Solution

  • What about this one Diana?

    prov_paths = [
      '/prov/:prov_id/dist/:dist_id/agregarDepartamento',
      '/lista/agregarDepartamento',
      '/prov/:prov_id/agregarDepartamento'
    ]
    prov_paths.each do |prov_path|
      get prov_path do
        # process
      end
    end