在Django中URL正規表示式匹配的方法

2022-09-29 18:00:23 字數 991 閱讀 1650

django框架中的url分發採用正規表示式匹配來進行,以下是正規表示式的基本規則:

官方演示**:

from django.conf.urls import url

from . import views

urlpatterns = [

url(r'^articles/2003/$', views.special_case_2003),

url(r'^articles/([0-9])/$', views.year_archive),

url(r'^articles/([0-9])/([0-9])/$', views.month_archive),

url(r'^articles/([0-9])/([0-9])/([0-9]+)/$', views.article_detail),

]注意:

不需要在www.cppcns.com前面加上『/'(slash),www.cppcns.com舉個栗子,要寫成'^articles', 而不是' ^/arwww.cppcns.comticles'。

在之前的'r'字母告訴pyhton直譯器這個string是乙個「raw」— 原始字串

注:python中原始字串(raw)的產生正是由於有正規表示式的存在。原因程式設計客棧是ascii 字元和正規表示式特殊字元間所產生的衝突。比如,特殊符號「\b」在 ascii 字元中代表退格鍵,但同時「\b」也是乙個正規表示式的特殊符號,代表「匹配乙個單詞邊界」。

為了讓re 編譯器把兩個字元「\b」當成你想要表達的字串,而不是乙個退格鍵,你需要用另乙個反斜線對它進行轉義,即可以這樣寫:「\b」。

但這樣做會把問題複雜化,特別是當你的正規表示式字串裡有很多特殊字元時,就更容易令人困惑了。在第六章,我們曾介紹過原始字串,它經常被用於簡化正規表示式的複雜程度。事實上,很多python 程式設計師在定義正規表示式時都只使用原始字串。

本文標題: 在django中url正規表示式匹配的方法

本文位址: /wangluo/re/247806.html

django的url 正則表達

django在檢查url模式前,移除每乙個申請的url開頭的斜槓 這意味著我們為 hello 寫url模式不用包含斜槓 剛開始,這樣可能看起來不直觀,但這樣的要求簡化了許多任務作,如url模式內嵌,我們將在第八章談及。模式包含了乙個尖號 和乙個美元符號 這些都是正規表示式符號,並且有特定的含義 上箭...

Django中url的正規表示式錯誤

warnings 2 0.w001 your url pattern name index has a route that contains p begins with a or ends with a this was likely an oversight when migrating to ...

Django 路由正則URL

django 路由正則url url1 路由url r detail views.detail blank href detail nid url2 返回乙個值,d 也可以寫為w 任意正則 url r detail d html views.detail blank href detail html...