out_url
次のような生の URL エンコーディングを持つフィールドを持つハイブ テーブルに対してクエリを実行しています。
http%3A%2F%2Fwww.example.com%2Findex.php%3Fpage%3D260%26id%3D22
ドメインのみを抽出したいのですが、URL が未加工でエンコードされていない場合は、「parse_url(out_url, 'HOST')」で可能です。
これを回避するために、次のような醜い二重正規表現の置換を行っています。
parse_url(regexp_replace(regexp_replace(out_url, '%3A', ':'), '%2F', '/'), 'HOST')
をとに変換し%3A
、ドメインを抽出します。これを行うためにJava UDFを作成できることは理解していますが、現在Javaの作成がほとんど苦手なので、それは私にとって素晴らしい選択肢ではありません。:
%2F
/
アイデア?Python UDF を書くことは可能ですか?