大家好,
这个表达式实际上是如何工作的?
urlpatterns = patterns('',
url(r'^get/(?P<app_id>\d+)/$', 'app.views.app'),
...
)
我了解它的作用,至少将用户输入的url 映射到应用程序 View 中的app()
函数页。我也明白这是一个正则表达式,最终获取应用程序的 id 并将其映射到 url。但是这个功能去哪儿了呢? r'^...?P/$ 是怎么回事(我知道 d+ 是一个数字正则表达式,是 id 本身,但仅此而已)。
我也理解这个 url 函数来自 django.conf.urls
模块。
也许我的误解更多是因为我缺乏正则表达式经验。尽管如此,我需要帮助!我不喜欢用我不懂的东西,我有罪。
最佳答案
让我们来看看:r'^get/(?P<app_id>\d+)/$'
r''
表示将字符串引号内的每个字符假定为字符串字符。-
^
字符表示正则表达式的开始。例如,forget/123
不会匹配表达式,因为不以get
开头,如果符号不存在,它应该匹配它,因为它不会强制匹配的字符串以get
开头。 , 就是get...
出现在字符串中。 $
字符表示表达式的结尾。如果不存在,get/123/xd
可能匹配表达式,这是不需要的。-
(?P<>)
是一种为表达式中的组提供名称/别名的方法。
你应该阅读 the python's regular expressions documentation .了解正则表达式非常有用,因为它们非常有用。
希望这对您有所帮助!
关于python - Django URL 正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17869213/