Python中文
首页
教程
问答
标签
搜索
登录
注册
如何制作python正则表达式?
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我正在为Django开发一个loginMiddleware类。此中间件类必须在未登录时将用户发送到登录页。但也有一些例外。在</p> <p>因为我在django服务器中运行构建,所以我必须创建一个媒体url。但是,当登录页面加载javascript文件时,javascript文件就是loginpage,因为用户没有登录。因为这个原因,我发表了一个声明:</p> <pre><code>from django.http import HttpResponseRedirect from django.conf import settings import re class loginMiddelware: def process_request(self,request): if request.path != settings.LOGIN_PATH and request.user.is_anonymous(): if request.path.find('media') <= 0: return HttpResponseRedirect(settings.LOGIN_PATH) else: return None </code></pre> <p>我是说如果请求.路径.查找('media')<;=0:。这很管用,但我觉得这不是一个好方法。我想我必须使用正则表达式。所以我看着重新匹配功能,并尝试了不同的想法,但没有任何效果。我想要一个regex,它只允许所有url以/media/开头,以下一个扩展名之一结束:js、css、png、gif或jpg。在</p> <p>这怎么可能?在</p> <p>谢谢!在</p> <p>汤姆</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>您不需要正则表达式:</p> <pre><code>if request.path.startswith('/path/to/your/media'): #do something </code></pre> <p>应该会成功的。您抱怨的是,如果请求路径包含:</p> ^{pr2}$ <p>你的实现会让用户通过。在</p> <p>因此,使用字符串方法<code>startswith</code>的绝对路径就足够解决您的问题了。在</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
带json的Pass生成器(最好在MQTT上)
1 回答
带json的pythonFlask
1 回答
带json的Python传输代码
6 回答
带json的Python读取API
3 回答
带JSON约束的Android POST请求
2 回答
带Jupyter笔记本和Sp的Docker
3 回答
带Jupyter笔记本的IdeaVim
1 回答
带Jupyter笔记本的Matplotlib不会绘制绘图,但会更正轴值
1 回答
带kbhi套接字的Python线程
9 回答
带Keras fit_发生器的记忆错误
8 回答
带keras-给定错误的卷积神经网络,UnboundLocalError:local变量“a”在赋值之前引用
1 回答
带Keras和WGANs的无效argumenterror
1 回答
带Keras的LSTM:Assign Op的Input'ref'需要左值inpu
6 回答
带keras的解密器
5 回答
带KeyError的简单循环:8167
5 回答
带key和valu的Python二叉搜索树
5 回答
带Kivy ConfigPars的布尔函数等
5 回答
带kivy+matplotlib的Android.apk
7 回答
带kivy的可滚动注册屏幕
5 回答
带kivy的圆形/圆形图像
9 回答