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

作者:thinkerleo7798 时间:2021-06-09 22:38:57 

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 程序员在定义正则表达式时都只使用原始字符串。

来源:https://blog.csdn.net/thinkerleo1997/article/details/74357018

标签:Django,正则,表达式,匹配
0
投稿

猜你喜欢

  • 有关于IE8 Beta 1两个提醒

    2008-05-15 12:32:00
  • 使用PHP获取网络文件的实现代码

    2023-09-09 08:41:53
  • asp截取字符串方法

    2009-02-09 13:30:00
  • python+pytest接口自动化之token关联登录的实现

    2023-01-21 13:27:37
  • Python实现远程调用MetaSploit的方法

    2022-07-17 05:40:31
  • python实现简单井字棋游戏

    2023-08-08 21:38:01
  • Python基础 括号()[]{}的详解

    2023-07-22 07:35:39
  • 面向对象的CSS

    2009-07-03 12:23:00
  • ORACLE 常用函数总结(80个)第1/2页

    2009-09-18 13:23:00
  • python先序遍历二叉树问题

    2023-10-09 10:25:30
  • SQL Server 2008中的MERGE(不仅仅是合并)

    2010-10-15 14:16:00
  • 纯CSS圆角框2-透明圆角化背景图片

    2009-12-11 19:10:00
  • Python字符串对齐、删除字符串不需要的内容以及格式化打印字符

    2021-09-17 10:46:33
  • python爬虫请求头的使用

    2023-03-21 07:10:23
  • em和strong的区别

    2008-12-23 12:08:00
  • Python中列表与元组的乘法操作示例

    2021-05-09 17:11:25
  • 数据库主键的故事

    2008-05-31 07:50:00
  • Python读取一个目录下所有目录和文件的方法

    2023-05-30 23:04:21
  • Python内置函数Type()函数一个有趣的用法

    2023-01-16 06:30:44
  • python中加背景音乐如何操作

    2023-11-09 02:54:51
  • asp之家 网络编程 m.aspxhome.com