使用Python正則表達式本身實現解析URL各參數

不使用庫,本身能夠利用正則表達式實現解析域名各部分參數:協議、域名、端口、路徑、載荷等。python

使用的正則表達式以下:正則表達式

r'''(?x)\A
([a-z][a-z0-9+\-.]*)://             # Scheme
([a-z0-9\-._~%]+                 # IPv4 host
|\[[a-z0-9\-._~%!$&'()*+,;=:]+\])       # IPv6 host
(:[0-9]+)?                     # Port number
([a-zA-Z0-9\-\/._~%!$&'()*+]+)?        # path
(\?[a-zA-Z0-9&=]+)?                # query
'''               

  例如,對於"https://www.baidu.com/xxx/xxx?s=xxx"網址,解析出來各部分爲:blog

('https', 'www.baidu.com', None, '/xxx/xxx', '?s=xxx')
相關文章
相關標籤/搜索