在Django中URL正則表達(dá)式匹配的方法
Django框架中的URL分發(fā)采用正則表達(dá)式匹配來(lái)進(jìn)行,以下是正則表達(dá)式的基本規(guī)則:

官方演示代碼:
from django.conf.urls import url
from . import views
urlpatterns = [
url(r'^articles/2003/$', views.special_case_2003),
url(r'^articles/([0-9]{4})/$', views.year_archive),
url(r'^articles/([0-9]{4})/([0-9]{2})/$', views.month_archive),
url(r'^articles/([0-9]{4})/([0-9]{2})/([0-9]+)/$', views.article_detail),
]
注意:
不需要在前面加上‘/'(slash),舉個(gè)栗子,要寫成'^articles', 而不是' ^/articles'。
在之前的'r'字母告訴Pyhton解釋器這個(gè)String是一個(gè)“raw”— 原始字符串
注:
Python中原始字符串(raw)的產(chǎn)生正是由于有正則表達(dá)式的存在。原因是ASCII 字符和正則表達(dá)式特殊字符間所產(chǎn)生的沖突。比如,特殊符號(hào)“\b”在 ASCII 字符中代表退格鍵,但同時(shí)“\b”也是一個(gè)正則表達(dá)式的特殊符號(hào),代表“匹配一個(gè)單詞邊界”。
為了讓RE 編譯器把兩個(gè)字符“\b”當(dāng)成你想要表達(dá)的字符串,而不是一個(gè)退格鍵,你需要用另一個(gè)反斜線對(duì)它進(jìn)行轉(zhuǎn)義,即可以這樣寫:“\b”。
但這樣做會(huì)把問(wèn)題復(fù)雜化,特別是當(dāng)你的正則表達(dá)式字符串里有很多特殊字符時(shí),就更容易令人困惑了。在第六章,我們?cè)榻B過(guò)原始字符串,它經(jīng)常被用于簡(jiǎn)化正則表達(dá)式的復(fù)雜程度。事實(shí)上,很多Python 程序員在定義正則表達(dá)式時(shí)都只使用原始字符串。
以上這篇在Django中URL正則表達(dá)式匹配的方法就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
pandas中apply和transform方法的性能比較及區(qū)別介紹
這篇文章主要介紹了pandas中apply和transform方法的性能比較,在文中給大家講解了apply() 與transform()的相同點(diǎn)與不同點(diǎn),需要的朋友可以參考下2018-10-10
Python wordcloud庫(kù)安裝方法總結(jié)
在本篇文章里小編給大家整理的是一篇關(guān)于Python wordcloud庫(kù)安裝方法總結(jié)內(nèi)容,有需要的朋友們可以學(xué)習(xí)下。2020-12-12
Python3實(shí)現(xiàn)購(gòu)物車功能
這篇文章主要為大家詳細(xì)介紹了Python3實(shí)現(xiàn)購(gòu)物車功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-04-04
Jupyter notebook 遠(yuǎn)程配置及SSL加密教程
這篇文章主要介紹了Jupyter notebook 遠(yuǎn)程配置及SSL加密教程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-04-04
Python讀取含url圖片鏈接的txt文檔方法小結(jié)
這篇文章主要為大家詳細(xì)介紹了三種Python讀取含url圖片鏈接的txt文檔方法,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2024-04-04

