本篇文章為大家展示了如何使用正則表達式匹配路由,內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。
專注于為中小企業(yè)提供成都網(wǎng)站制作、成都網(wǎng)站建設(shè)、外貿(mào)營銷網(wǎng)站建設(shè)服務(wù),電腦端+手機端+微信端的三站合一,更高效的管理,為中小企業(yè)榆次免費做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了1000+企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實現(xiàn)規(guī)模擴充和轉(zhuǎn)變。具體實現(xiàn)步驟為:
導(dǎo)入轉(zhuǎn)換器基類:在 Flask 中,所有的路由的匹配規(guī)則都是使用轉(zhuǎn)換器對象進行記錄
自定義轉(zhuǎn)換器:自定義類繼承于轉(zhuǎn)換器基類
添加轉(zhuǎn)換器到默認(rèn)的轉(zhuǎn)換器字典中
使用自定義轉(zhuǎn)換器實現(xiàn)自定義匹配規(guī)則
代碼實現(xiàn)
導(dǎo)入轉(zhuǎn)換器基類
from werkzeug.routing import BaseConverter
自定義轉(zhuǎn)換器
# 自定義正則轉(zhuǎn)換器 class RegexConverter(BaseConverter): def __init__(self, url_map, *args): super(RegexConverter, self).__init__(url_map) # 將接受的第1個參數(shù)當(dāng)作匹配規(guī)則進行保存 self.regex = args[0]
添加轉(zhuǎn)換器到默認(rèn)的轉(zhuǎn)換器字典中,并指定轉(zhuǎn)換器使用時名字為: re
app = Flask(__name__) # 將自定義轉(zhuǎn)換器添加到轉(zhuǎn)換器字典中,并指定轉(zhuǎn)換器使用時名字為: re app.url_map.converters['re'] = RegexConverter
使用轉(zhuǎn)換器去實現(xiàn)自定義匹配規(guī)則
當(dāng)前此處定義的規(guī)則是:3位數(shù)字
@app.route('/user/') def user_info(user_id): return "user_id 為 %s" % user_id
運行測試:http://127.0.0.1:5000/user/123 ,如果訪問的url不符合規(guī)則,會提示找不到頁面
系統(tǒng)自帶轉(zhuǎn)換器
DEFAULT_CONVERTERS = { 'default': UnicodeConverter, 'string': UnicodeConverter, 'any': AnyConverter, 'path': PathConverter, 'int': IntegerConverter, 'float': FloatConverter, 'uuid': UUIDConverter, }
上述內(nèi)容就是如何使用正則表達式匹配路由,你們學(xué)到知識或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識儲備,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。