我使用python Tornado,我想从这个URL中提取:
http://myserver.com/v1/files_get/app/path/for/you/myfile.txt
这个值:
app
和路径(路径)的其余部分:
/path/for/you/myfile.txt
我将这个REGEXP用于龙卷风:
tornado.web.Application([
(r"/v1/files_get/(?P<root>[^\/]+)/?(?P<path>[^\/]+)?/?", files_get),
])
我不知道是否可能,因为我的正则表达式只获得了路径的水平。
¿它应该是正确的正则表达式吗?
答案 0 :(得分:1)
试试这个:
r'/v1/files_get/(?P<root>[^/]+)(?P<path>/.*)?'
/
不是魔法,你不是用它作为分隔符(就像你在Perl或Ruby中那样),所以它不需要被转义。
由于您希望捕获&lt; root&gt;之后的所有内容,如果它存在,您可以将整个组设为可选。