URL 関数

抽出関数

URL 抽出関数は、HTTP URL(またはRFC 2396に準拠する有効な URI)からコンポーネントを抽出します。以下の構文がサポートされています。

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

抽出されたコンポーネントには、:?などのURI構文セパレータは含まれません。

url_extract_fragment(url) -> varchar()

urlからフラグメント識別子を返します。

url_extract_host(url) -> varchar()

urlからホストを返します。

url_extract_parameter(url, name) -> varchar()

urlから、nameという名前の最初のクエリ文字列パラメータの値を返します。RFC 1866#section-8.2.1で指定されているように、パラメータの抽出は通常の方法で処理されます。

url_extract_path(url) -> varchar()

urlからパスを返します。

url_extract_port(url) -> bigint()

urlからポート番号を返します。

url_extract_protocol(url) -> varchar()

urlからプロトコルを返します。

url_extract_query(url) -> varchar()

urlからクエリ文字列を返します。

エンコーディング関数

url_encode(value) -> varchar()

valueをエンコードしてURLクエリパラメータの名前と値に安全に含めることができるようにエスケープします。

  • 英数字はエンコードされません。

  • .-*_はエンコードされません。

  • ASCIIスペース文字は+としてエンコードされます。

  • その他の文字はUTF-8に変換され、バイトは%XXという文字列としてエンコードされます。XXはUTF-8バイトの大文字の16進値です。

url_decode(value) -> varchar()

URLエンコードされたvalueをアンエスケープします。この関数はurl_encode()の逆関数です。