local p =
function split(str, pat) local t = local fpat = "(.-)" .. pat local last_end = 1 local s, e, cap = str:find(fpat, 1) while s do if s ~= 1 or cap ~= "" then table.insert(t,cap) end last_end = e+1 s, e, cap = str:find(fpat, last_end) end if last_end <= #str then cap = str:sub(last_end) table.insert(t, cap) end return tend
function p.main(frame) local str = frame.args[1]
function cap_if(s) if string.upper(s)
function capsize(s) local inter2 = for i, k in ipairs(split(s, "%-")) do local sub2 = for j, v in ipairs(split(k, "%.")) do table.insert(sub2, cap_if(v)) end table.insert(inter2, cap_if(table.concat(sub2, "."))) end return table.concat(inter2, "-") end
return capsize(str)end
return p