在Django中URL正則表達(dá)式匹配的方法
Django框架中的URL分發(fā)采用正則表達(dá)式匹配來進(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),舉個栗子,要寫成'^articles', 而不是' ^/articles'。
在之前的'r'字母告訴Pyhton解釋器這個String是一個“raw”— 原始字符串
注:
Python中原始字符串(raw)的產(chǎn)生正是由于有正則表達(dá)式的存在。原因是ASCII 字符和正則表達(dá)式特殊字符間所產(chǎn)生的沖突。比如,特殊符號“\b”在 ASCII 字符中代表退格鍵,但同時“\b”也是一個正則表達(dá)式的特殊符號,代表“匹配一個單詞邊界”。
為了讓RE 編譯器把兩個字符“\b”當(dāng)成你想要表達(dá)的字符串,而不是一個退格鍵,你需要用另一個反斜線對它進(jìn)行轉(zhuǎn)義,即可以這樣寫:“\b”。
但這樣做會把問題復(fù)雜化,特別是當(dāng)你的正則表達(dá)式字符串里有很多特殊字符時,就更容易令人困惑了。在第六章,我們曾介紹過原始字符串,它經(jīng)常被用于簡化正則表達(dá)式的復(fù)雜程度。事實(shí)上,很多Python 程序員在定義正則表達(dá)式時都只使用原始字符串。
以上這篇在Django中URL正則表達(dá)式匹配的方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持我們。
上一篇:13道關(guān)于JavaScript正則表達(dá)式的面試題
欄 目:正則表達(dá)式
下一篇:正則表達(dá)式實(shí)現(xiàn)字符串每4位后自動加空格效果(兩種方法)
本文標(biāo)題:在Django中URL正則表達(dá)式匹配的方法
本文地址:http://mengdiqiu.com.cn/a1/zhengzebiaodashi/11215.html
您可能感興趣的文章
- 01-11正則表達(dá)式匹配路由的實(shí)現(xiàn)代碼
- 01-11Python正則表達(dá)式中的re.S的作用詳解
- 01-11詳解Python中的正則表達(dá)式
- 01-11Python中正則表達(dá)式小結(jié)
- 01-11藏在正則表達(dá)式里的陷阱(推薦)
- 01-11python使用正則表達(dá)式來獲取文件名的前綴方法
- 01-11python正則表達(dá)式匹配[]中間為任意字符的實(shí)例
- 01-11正則表達(dá)式實(shí)現(xiàn)手機(jī)號中間4位數(shù)隱藏或者只顯示末尾四位數(shù)
- 01-11python中正則表達(dá)式 re.findall 用法
- 01-11Python 正則表達(dá)式匹配字符串中的http鏈接方法


閱讀排行
本欄相關(guān)
- 01-11正則表達(dá)式實(shí)現(xiàn)添加、刪除、替換三
- 01-11正則表達(dá)式之匹配數(shù)字范圍
- 01-11python 用正則表達(dá)式篩選文本信息的實(shí)
- 01-11正則表達(dá)式匹配路由的實(shí)現(xiàn)代碼
- 01-11python爬蟲正則表達(dá)式之處理換行符
- 01-11js正則表達(dá)式 匹配兩個特定字符間的
- 01-11正則表達(dá)式截取身份證號碼加密的方
- 01-11python正則表達(dá)式之對號入座篇
- 01-11MySQL使用正則表達(dá)式進(jìn)行查詢操作經(jīng)典
- 01-11詳解正則表達(dá)式實(shí)現(xiàn)二代身份證號碼
隨機(jī)閱讀
- 08-05dedecms(織夢)副欄目數(shù)量限制代碼修改
- 01-11ajax實(shí)現(xiàn)頁面的局部加載
- 01-10SublimeText編譯C開發(fā)環(huán)境設(shè)置
- 01-11Mac OSX 打開原生自帶讀寫NTFS功能(圖文
- 01-10C#中split用法實(shí)例總結(jié)
- 01-10使用C語言求解撲克牌的順子及n個骰子
- 01-10delphi制作wav文件的方法
- 08-05織夢dedecms什么時候用欄目交叉功能?
- 04-02jquery與jsp,用jquery
- 08-05DEDE織夢data目錄下的sessions文件夾有什