in scripts/lua/routing.lua [265:283]
function _M.pathParamMatch(key, resourceKey)
local pathParamVars = {}
for w in string.gmatch(key, "({%w+})") do
w = string.sub(w, 2, string.len(w) - 1)
pathParamVars[#pathParamVars + 1] = w
end
if next(pathParamVars) ~= nil then
local pathPattern, count = string.gsub(key, "%{(%w*)%}", "([^:]+)")
pathPattern = string.gsub(pathPattern, "%-", "%%-")
local obj = {string.match(resourceKey, pathPattern)}
if (#obj == count) then
for i, v in pairs(obj) do
ngx.ctx[pathParamVars[i]] = v
end
return true
end
end
return false
end