I'm using Django's URLconf, the URL I will receive is /?code=authenticationcode

I want to match the URL using r'^\?code=(?P.*)$' , but it doesn't work.

Then I found out it is the problem of '?'.

Becuase I tried to match /aaa?aaa using r'aaa\?aaa' r'aaa\\?aaa' even r'aaa.*aaa' , all failed, but it works when it's "+" or any other character.

How to match the '?', is it special?

解决方案>>> s="aaa?aaa"

>>> import re

>>> re.findall(r'aaa\?aaa', s)

['aaa?aaa']

The reason /aaa?aaa won't match inside your URL is because a ? begins a new GET query.

So, the matchable part of the URL is only up to the first 'aaa'. The remaining '?aaa' is a new query string separated by the '?' mark, containing a variable "aaa" being passed as a GET parameter.

What you can do here is encode the variable before it makes its way into the URL. The encoded form of ? is %3F.

You should also not match a GET query such as /?code=authenticationcode using regex at all. Instead, match your URL up to / using r'^$'. Django will pass the variable code as a GET parameter to the request object, which you can obtain in your view using request.GET.get('code').

python变量名可以包含的字符有问号吗,带问号文字的Python正则表达式相关推荐

  1. python变量名必须以字母或下划线开头不区分字母大小写_Python变量名必须以字符或下划线开头,并且区分字母大小写。...

    [判断题]在Python 3.x中可以使用中文作为变量名. [判断题]Python变量名必须以字符或下划线开头,并且区分字母大小写. [填空题]气体的粘度随温度升高而( ),水的粘度随温度升高而( ) ...

  2. python变量名必须以字母或下划线开头不区分字母大小写_Python 变量名必须以字符或下划线开头,并且区分字母大小写。_学小易找答案...

    [单选题]柏努利方程式中的u2/2 项表示流体所具有的( ). [简答题]职业的 adj. [单选题]两个并联管路中,在其他条件相同的条件下,管径越大,分配的流量越( ). [判断题]Python 变 ...

  3. python变量名必须以什么开头_python变量为什么不能以数字开头

    任何事情只要有人规定成文了,必定有其原因所在,也就是有其合理性所在. Python变量命名规则(推荐学习:Python视频教程) 变量名只能包含字母.数字和下划线.变量名可以字母或下划线开头,但不能以 ...

  4. 可用作python变量名的是_Python编程4:什么是变量

    #少儿编程# 我们在上一篇<Python编程3:与计算机对话之键盘输入input()>中介绍input()函数时曾经使用过变量,将键盘输入的内容赋给变量name.变量,在各个编程语言中都是 ...

  5. python变量名是否合法_Python判断变量名是否合法的方法示例

    如何判断一个python表达式是否合法? 换句话说合法的python表达式的通性是什么?活得糊涂的人,容易愉悦:活得清醒的人,容易烦恼. a=input() try:b=eval(a);print(& ...

  6. python变量名包括_python变量命名规则

    python变量命名规则如下: 1.变量名称由数字.字母(包括大写字母和小写字母).下划线组成. 2.变量名不能以数字开头 3.变量名不能用python关键字 4.变量名不能用python函数,否则函 ...

  7. 下列变量名不符合python命名规范的是_下列合法的Python变量名是( )

    [其它]主题插画设计(1920*1080PX) 表情包设计(30个) 专业形象设计(10个) 三类任选其一,每一类都要有设计说明. [单选题]下面代码的输出结果是________ x=10 y=3 p ...

  8. Python变量名的定义规则与定义方式

    变量名的定义规则 1.变量名只能是 字母.数字或者下划线的任意组合 2.变量名的第一个字符不能是数字 3.一下关键字不能声明为变量名 常用定义方式 驼峰法 AgeOfOld=56 NumberOfSt ...

  9. python变量名区分大小写_python变量名要不要区分大小写

    python变量名要不要区分大小写 发布时间:2020-11-23 11:40:34 来源:亿速云 阅读:106 作者:小新 小编给大家分享一下python变量名要不要区分大小写,相信大部分人都还不怎 ...

最新文章

  1. Mask R-CNN用于目标检测和分割代码实现
  2. Java项目:实现权限管理系统(java+SpringBoot+MyBatis+AOP+LayUI+Mysql)
  3. 蚂蚁金服-支付风险识别亚军方案!
  4. 工业机器人电路图讲解话术_6张经典电路图分析助你进阶高级电工,你都会了吗?...
  5. 在javascript当中发现了一个没有调用者的方法。
  6. 下面由我来给大家表演个绝活
  7. 热烈祝贺《大数据》主编郑纬民教授当选中国工程院院士!!!
  8. java activity生命周_关于Activity的生命周期和任务栈的理解
  9. Python问题记录
  10. Titlemizer 随机相关的标题生成器插件
  11. 绿茶软件测试自学,7号心理测试小程序
  12. 映月城与电子姬服务器维护,映月城与电子姬11月16日更新公告 加强玩家作弊检测增加举报功能...
  13. 马哥 python培训
  14. 宇宙中最恐怖的行星之索伦之眼—北落师门b
  15. 微信广告+视频号,营销能力全面盘点,视频号是否能做新突破?
  16. 在操作系统、芯片领域跌倒的中国程序员,如何崛起?
  17. C语言:由大到小排序
  18. 并联串联混合的电压和电流_中考物理满分之路:《电阻的串联和并联》2020年高频易错题集...
  19. Linux自动挂载失败,linux – 在启动期间自动挂载单独分区时的systemd / udev依赖性失败...
  20. 计算机专业本科生想做科研,一定要进实验室吗?

热门文章

  1. 获取手机通讯录跟sim卡通讯录
  2. 在Ubuntu桌面上显示我的电脑等图标
  3. DM365 u-boot 启动分析
  4. 逻辑综合——优化电路
  5. 【文件处理】——Python pandas 写入数据到excel中
  6. apache服务器性能诊断,Apache服务器性能评测
  7. mysqld:表mysql.plugin不存在_99%测试工程师不知道的数据库知识|干货
  8. Qt之程序发布以及打包成exe安装包
  9. 架构-浅谈MySQL数据库优化
  10. SpringMVC的工作流程