PRESTO的URL解析

目录

url_extract_protocol

url_extract_host

url_extract_port

url_extract_path

url_extract_query

url_extract_fragment

url_extract_parameter


 

URL方法用于从HTTP URLs(或者是任何满足RFC 2396标准的有效URIs)中提取相应的信息。URL方法支持如下的语法:

[protocol:][//host[:port]][path][?query][#fragment]

 

url_extract_protocol

从url返回protocol

url_extract_protocol(url) → varchar

presto:default> select url_extract_protocol('https://www.baidu.com/s?cl=3&tn=baidutop10&fr=top1000&wd=大唐不夜城着火&rsv_idx=2&rsv_dl=fyb_n_homepage');
 _col0 
-------
 https 
(1 row)

 

url_extract_host

从url返回host

url_extract_host(url) → varchar

presto:default> select url_extract_host('https://www.baidu.com/s?cl=3&tn=baidutop10&fr=top1000&wd=大唐不夜城着火&rsv_idx=2&rsv_dl=fyb_n_homepage');
     _col0     
---------------
 www.baidu.com 
(1 row)

 

url_extract_port

从url返回port值

url_extract_port(url) → bigint

presto:default> select url_extract_port('https://www.baidu.com/s?cl=3&tn=baidutop10&fr=top1000&wd=大唐不夜城着火&rsv_idx=2&rsv_dl=fyb_n_homepage');
 _col0 
-------
 NULL  
(1 row)
presto:default> select url_extract_port('https://www.baidu.com:8888/s?cl=3&tn=baidutop10&fr=top1000&wd=大唐不夜城着火&rsv_idx=2&rsv_dl=fyb_n_homepage');
 _col0 
-------
  8888 
(1 row)

 

url_extract_path

从url返回path

url_extract_path(url) → varchar

presto:default> select url_extract_path('https://www.baidu.com/s?cl=3&tn=baidutop10&fr=top1000&wd=大唐不夜城着火&rsv_idx=2&rsv_dl=fyb_n_homepage');
 _col0 
-------
 /s    
(1 row)

 

url_extract_query

从url返回extract_query

url_extract_query(url) → varchar

presto:default> select url_extract_query('https://www.baidu.com/s?cl=3&tn=baidutop10&fr=top1000&wd=大唐不夜城着火&rsv_idx=2&rsv_dl=fyb_n_homepage');
                                      _col0                                      
---------------------------------------------------------------------------------
 cl=3&tn=baidutop10&fr=top1000&wd=大唐不夜城着火&rsv_idx=2&rsv_dl=fyb_n_homepage 
(1 row)

 

url_extract_fragment

从URL返回fragment标识符

url_extract_fragment(url) → varchar

presto:default> select url_extract_fragment('https://blog.csdn.net/Kikitious_Du/article/details/91441639#REGEXP_REPLACT');
     _col0      
----------------
 REGEXP_REPLACT 
(1 row)

 

url_extract_parameter

从url返回名为name的第一个查询字符串参数的值。 参数提取按照RFC 1866#section-8.2.1规定的典型方式处理

url_extract_parameter(url, name) → varchar

presto:default> select url_extract_parameter('https://www.baidu.com/s?cl=3&tn=baidutop10&fr=top1000&wd=大唐不夜城着火&rsv_idx=2&rsv_dl=fyb_n_homepage', 'wd');
     _col0      
----------------
 大唐不夜城着火 
(1 row)

 

 

 

 

 

 

你可能感兴趣的:(PRESTO)