- URL组成部分:最常用的是5部分
url = ‘http://www.baidu.com:80/news/home/?wk="xx"’
协议 域名 端口号 路径 参数
①django框架只匹配url中的路径部分
②参数与路径部分使用?分割。多参数之间通过&连接
- 正则表达式
①正则表达式是独立于编程语言的一门技术
②正则表达式由特殊的字符+量词组成的
特殊字符 |
含义 |
[] |
表示一位 |
[a-z] |
表示字母a到字母z范围内的一个字母 |
[A-Z] |
表示字母a到字母z范围内的一个字母 |
[0-9] |
表示字母a到字母z范围内的一个数字 |
[0-9A-Za-z] |
0到9A到Za到z范围内的一个内容 |
\d |
等价于[0-9] |
\w |
等价于[0-9A-Za-z] |
量词 |
含义 |
{n} |
前面一个特殊符号匹配到的字符出现n次 |
{n,} |
前面一个特殊符号匹配到的字符至少出现n次 |
{n,m} |
前面一个特殊符号匹配到的字符至少出现n次,至多出现m次 |
+ |
前面一个特殊符号匹配到的字符至少出现1次{1,} |
? |
前面一个特殊符号匹配到的字符出现0次或者1次{0,1} |
* |
前面一个特殊符号匹配到的字符出现0次或者多次(任意次数){0,} |
3.通过分组来捕获路径中的内容
-
urls.py中
re_path(r'^正则表达式1/(正则表达式2)/(正则表达式3)/$',视图)
views .py中
def 视图(request,变量1,变量2)
pass
正则表达示2的值传给变量1,正则表达式3的值传给变量2
- 分组命名匹配
urls.py中
re_path(r'^正则表达式1/(?P<变量1>正则表达式2)/(?P<变量2>正则表达式3)/$',视图)
#注意 视图函数中的形参名称必须和组名相同。
views .py中
def 视图(request,变量1,变量2)
pass
正则表达示2的值传给变量1,正则表达式3的值传给变量2