'^ site_media /(?P <path>。*)$'</path>的含义

时间:2011-11-15 15:27:18

标签: python regex django

# urls.py
site_media = os.path.join(os.path.dirname(__file__), 'site_media'
)

urlpatterns = patterns('',
     (r'^site_media/(?P<path>.*)$', 'django.views.static.serve', 
                                     {'document_root': site_media}),
)

我无法理解上述陈述中使用的表达式的含义。

'^site_media/(?P<path>.*)$'

这究竟意味着什么?

谢谢

// ==========根据评论更新==============

参考:Name Groups

在Python正则表达式中,命名为regular-expression的语法 群组为(?P<name>pattern),其中名称是群组的名称 模式是一种匹配的模式。

比较:

方法1&gt;

(r'^articles/(?P<year>\d{4})/(?P<month>\d{2})/$', 'news.views.month_archive'),

/articles/2005/03/的请求将调用该函数

news.views.month_archive(request, year='2005', month='03')

方法2&gt;

(r'^articles/(\d{4})/(\d{2})/$', 'news.views.month_archive'),

/articles/2005/03/的请求将调用该函数

news.views.month_archive(request, '2005', '03')

2 个答案:

答案 0 :(得分:3)

网址在the docs

中得到了很好的解释

答案 1 :(得分:2)

(?P<path>.*)是一个命名组。 http://docs.python.org/library/re.html