hive函數_split 字符串分割函數

hive字符串分割函數 


轉自http://blog.csdn.net/lxpbs8851/article/details/18712407


split(str, regex) - Splits str around occurances that match regex
Time taken: 0.769 seconds, Fetched: 1 row(s)

返回值爲一個數組

a.基本用法

例1:

split('a,b,c,d',',')

得到的結果:

["a","b","c","d"]

 

b.截取字符串中的某個值:

當然,我們也可以指定取結果數組中的某一項

例2:

split('a,b,c,d',',')[0]

得到的結果:

a

 

c.特殊字符的處理:

特殊分割符號

regex 爲字符串匹配的參數,所以遇到特殊字符的時候需要做特殊的處理

例3:  "." 點

split('192.168.0.1','.')

得到的結果:

[]

 

正確的寫法:

split('192.168.0.1','\\.')

得到的結果:

["192","168","0","1"]

 

需要注意的是

當然當split包含在 "" 之中時 需要加4個\

如 hive -e "....  split('192.168.0.1','\\\\.') ... "  不然得到的值是null

 

同樣的 | 等特殊符號也需要做類似 處理。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章