我正在查询具有字段的配置单元表 out_url
具有原始url编码的,例如: http%3A%2F%2Fwww.example.com%2Findex.php%3Fpage%3D260%26id%3D22
我只想提取域,如果url不是原始编码的,那么就可以使用'parse\u url(out\u url,'host')。
为了解决这个问题,我做了一个丑陋的双regexp替换,比如: parse_url(regexp_replace(regexp_replace(out_url, '%3A', ':'), '%2F', '/'), 'HOST')
它使 %3A
至 :
以及 %2F
至 /
然后提取域。我知道我可以编写一个javaudf来实现这一点,但这对我来说不是一个很好的选择,因为我目前在编写java方面很差劲。
思想?可以编写python自定义项吗?
1条答案
按热度按时间xt0899hw1#
这里似乎有一种使用java反射的简单方法:http://mail-archives.apache.org/mod_mbox/hive-user/201109.mbox/%3c15c962f3417bf94abeab2314af92a16a1ff9ce@svr-pr-mb2.cb.careerbuilder.com%3e