美文网首页
Flask路由中使用正则表达式匹配

Flask路由中使用正则表达式匹配

作者: 孙宏志 | 来源:发表于2017-06-17 23:59 被阅读0次

由于flask并不支持直接使用正则表达式来匹配路由,我们可以使用werkzeug.routing的BaseConverter来实现

代码:

from flask import Flask
from werkzeug.routing import BaseConverter

class RegexConverter(BaseConverter):
    def __init__(self, url_map,*items):
        super(RegexConverter,self).__init__(url_map)
        self.regex = items[0]

app = Flask(__name__)
app.url_map.converters['reg'] = RegexConverter

@app.route('/user/<reg("[a-z]{3}-\d{5,6}"):user_id>')
def user(user_id):
    return 'user id : %s' %user_id

if __name__ == '__main__':
    app.run()

其中路由中使用的reg字符串表示匹配 三个小写英文字母开头,中间短横,末尾以5到6位的数字结尾

效果如图:

image.png

相关文章

  • Flask路由中使用正则表达式匹配

    由于flask并不支持直接使用正则表达式来匹配路由,我们可以使用werkzeug.routing的BaseConv...

  • Flask路由系统

    通常有3种定义路由函数的方法: 使用flask.Flask.route() 修饰器。 使用flask.Flask....

  • mysql(04day)

    Mysql支持正则表达式的匹配,Mysql中使用REGEXP操作符来进行正则表达式匹配。 下面中的正则模式中可用于...

  • 『react』路由

    一、路由的基本使用 1.路由的使用步骤: 2.默认路由 二、编程式导航 三、路由匹配模式 1.模糊匹配模式 2.精...

  • 关于flask路由的思考

    flask路由 在使用flask时,我们设置路由的方式通常为: 问题来了, 我们并没有执行定义的函数,那么app....

  • 初识flask——项目拆分、运行、插件以及会话技术

    一、flask基本使用 安装flask 创建项目 添加路由规则和视图函数 启动项目 二、flask-script插...

  • flask01

    一、flask基本使用 安装flask 创建项目 添加路由规则和视图函数 启动项目 二、flask-script插...

  • vue 路由的跳转和传参

    1. 必须使用 name 匹配路由,params 传参 (不可使用 path 匹配路由) 特点:参数保密,刷新页面...

  • flask路由用正则匹配

  • Flask之路由管理

    # Flask 路由系统 # ## ## 方法一:使用系统路由,在app.py中有个例子 ## ## @app.r...

网友评论

      本文标题:Flask路由中使用正则表达式匹配

      本文链接:https://www.haomeiwen.com/subject/iuabqxtx.html