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


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


