在Django中URL正则表达式匹配的方法


Posted in Python onDecember 20, 2018

Django框架中的URL分发采用正则表达式匹配来进行,以下是正则表达式的基本规则:

在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]{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)的产生正是由于有正则表达式的存在。原因是ASCII 字符和正则表达式特殊字符间所产生的冲突。比如,特殊符号“\b”在 ASCII 字符中代表退格键,但同时“\b”也是一个正则表达式的特殊符号,代表“匹配一个单词边界”。

为了让RE 编译器把两个字符“\b”当成你想要表达的字符串,而不是一个退格键,你需要用另一个反斜线对它进行转义,即可以这样写:“\b”。

但这样做会把问题复杂化,特别是当你的正则表达式字符串里有很多特殊字符时,就更容易令人困惑了。在第六章,我们曾介绍过原始字符串,它经常被用于简化正则表达式的复杂程度。事实上,很多Python 程序员在定义正则表达式时都只使用原始字符串。

以上这篇在Django中URL正则表达式匹配的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python统计一个文本中重复行数的方法
Nov 19 Python
使用Python的PIL模块来进行图片对比
Feb 18 Python
python字典键值对的添加和遍历方法
Sep 11 Python
使用Python写一个贪吃蛇游戏实例代码
Aug 21 Python
python实现音乐下载器
Apr 15 Python
Python高级用法总结
May 26 Python
python生成多个只含0,1元素的随机数组或列表的实例
Nov 12 Python
Python实现二叉树的最小深度的两种方法
Sep 30 Python
Python爬取365好书中小说代码实例
Feb 28 Python
PyQt5中向单元格添加控件的方法示例
Mar 24 Python
Python常用库Numpy进行矩阵运算详解
Jul 21 Python
Python3如何使用tabulate打印数据
Sep 25 Python
python采集微信公众号文章
Dec 20 #Python
Linux下Pycharm、Anaconda环境配置及使用踩坑
Dec 19 #Python
python爬虫之urllib,伪装,超时设置,异常处理的方法
Dec 19 #Python
python3实现网络爬虫之BeautifulSoup使用详解
Dec 19 #Python
python爬虫超时的处理的实例
Dec 19 #Python
pycharm中使用anaconda部署python环境的方法步骤
Dec 19 #Python
Django框架模板注入操作示例【变量传递到模板】
Dec 19 #Python
You might like
php session的锁和并发
2016/01/22 PHP
PHP中常用的数组操作方法笔记整理
2016/05/16 PHP
thinkPHP内置字符串截取函数用法详解
2016/11/15 PHP
Laravel框架路由管理简单示例
2019/05/07 PHP
PHP结合Redis+MySQL实现冷热数据交换应用案例详解
2019/07/09 PHP
jquery ajax 同步异步的执行 return值不能取得的解决方案
2012/01/08 Javascript
jquery ajax,ashx,json的用法总结
2014/02/12 Javascript
jquery中页面Ajax方法$.load的功能使用介绍
2014/10/20 Javascript
Nodejs Stream 数据流使用手册
2016/04/17 NodeJs
jquery模拟多级复选框效果的简单实例
2016/06/08 Javascript
Angular开发者指南之入门介绍
2017/03/05 Javascript
Angualrjs和bootstrap相结合实现数据表格table
2017/03/30 Javascript
Javascript网页抢红包外挂实现分享
2018/01/11 Javascript
js最实用string(字符串)类型的使用及截取与拼接详解
2019/04/26 Javascript
JS实现可切换图片的幻灯切换效果示例
2019/05/24 Javascript
javascript实现动态时钟的启动和停止
2020/07/29 Javascript
vuex分模块后,实现获取state的值
2020/07/26 Javascript
Node.js利用Express实现用户注册登陆功能(推荐)
2020/10/26 Javascript
原生JavaScript实现进度条
2021/02/19 Javascript
[03:23:49]2016.12.17日完美“圣”典全回顾
2016/12/19 DOTA
[00:09]DOTA2全国高校联赛 精彩活动引爆全场
2018/05/30 DOTA
Python的string模块中的Template类字符串模板用法
2016/06/27 Python
win与linux系统中python requests 安装
2016/12/04 Python
python英语单词测试小程序代码实例
2019/09/09 Python
python程序 创建多线程过程详解
2019/09/23 Python
pytorch 实现打印模型的参数值
2019/12/30 Python
python中for in的用法详解
2020/04/17 Python
HTML5中meta属性的使用方法
2016/02/29 HTML / CSS
英国第一蛋白粉品牌:Myprotein
2016/09/14 全球购物
MIXIT官网:俄罗斯最大的化妆品公司之一
2020/01/25 全球购物
实习医生自我评价
2013/09/22 职场文书
怎样客观的做好自我评价
2013/12/28 职场文书
致铅球运动员加油稿
2014/02/13 职场文书
销售类求职信
2014/06/13 职场文书
MySQL系列之四 SQL语法
2021/07/02 MySQL
python​格式化字符串
2022/04/20 Python