当前,我有三个映射到ServiceHandler的URL路径。如何将这三个合并为一个整齐的正则表达式,可以将n个参数传递给ServiceHandler?
(r'/s/([^/]*)', ServiceHandler),
(r'/s/([^/]*)/([^/]*)', ServiceHandler),
(r'/s/([^/]*)/([^/]*)/([^/]*)', ServiceHandler)
最佳答案
(r'^/s/(([^/]*)((/[^/]+)*))$', ServiceHandler)
应该做的技巧来匹配任何数量的
/ s / foo / bar / baz / to / infinity / and / beyond /
您还可以通过执行以下操作将其限制在一定范围内
^/s/(([^/]*)((/[^/]+){0,2}))$
这只会匹配像
/s/foo/bar/baz
/s/foo/bar
/s/foo
但不是
/s/foo/bar/baz/pirate
/s
关于python - 如何在GAE/Python中为n个参数编写RESTful URL路径正则表达式?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1570198/