Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我有一个绑定到 Tornado 处理程序的 URL。例如
(r'/browse/article/([a-zA-Z0-9_-]+)/([0-9]*)', ArticleHandler),
但是,参数的数量不是固定的,有些是/browse/article/blah,有些是/browse/article/blah/2。换句话说,最后一个参数可能存在也可能不存在。
/browse/article/blah
/browse/article/blah/2
是否仍然可以使用单个处理程序来处理这种情况?如果是这样,我应该如何制定正则表达式字符串以匹配所有可能的情况?
尝试这个:
(r'/browse/article/([a-zA-Z0-9_-]+)(?:/([0-9]*))?', ArticleHandler),
这使得最后一段是可选的,同时保持捕获括号完整,以防它们稍后用于某些事情。