int |
ascii(string str) |
返回str中首个ASCII字符串的整数值 |
string |
base64(binary bin) |
将二进制bin转换成64位的字符串 |
string |
concat(string/binary A, string/binary B…) |
对二进制字节码或字符串按次序进行拼接 |
array<struct<string,double>> |
context_ngrams(array<array>, array, int K, int pf) |
与ngram类似,但context_ngram()允许你预算指定上下文(数组)来去查找子序列 |
string |
concat_ws(string SEP, string A, string B…) |
与concat()类似,但使用指定的分隔符喜进行分隔 |
string |
concat_ws(string SEP, array) |
拼接Array中的元素并用指定分隔符进行分隔 |
string |
decode(binary bin, string charset) |
使用指定的字符集charset将二进制值bin解码成字符串 |
binary |
encode(string src, string charset) |
使用指定的字符集charset将字符串编码成二进制值 |
int |
find_in_set(string str, string strList) |
返回以逗号分隔的字符串中str出现的位置,如果参数str为逗号或查找失败将返回0,如果任一参数为NULL将返回NULL |
string |
format_number(number x, int d) |
将数值X转换成"#,###,###.##"格式字符串,并保留d位小数,如果d为0,将进行四舍五入且不保留小数 |
string |
get_json_object(string json_string, string path) |
从指定路径上的JSON字符串抽取出JSON对象,并返回这个对象的JSON格式,如果输入的JSON是非法的将返回NULL,注意此路径上JSON字符串只能由数字 字母 下划线组成且不能有大写字母和特殊字符,且key不能由数字开头,这是由于Hive对列名的限制 |
boolean |
in_file(string str, string filename) |
如果文件名为filename的文件中有一行数据与字符串str匹配成功就返回true |
int |
instr(string str, string substr) |
查找字符串str中子字符串substr出现的位置,如果查找失败将返回0,如果任一参数为Null将返回null,注意位置为从1开始的 |
int |
length(string A) |
返回字符串的长度 |
int |
locate(string substr, string str[, int pos]) |
查找字符串str中的pos位置后字符串substr第一次出现的位置 |
string |
lower(string A) lcase(string A) |
将字符串A的所有字母转换成小写字母 |
string |
lpad(string str, int len, string pad) |
从左边开始对字符串str使用字符串pad填充,最终len长度为止,如果字符串str本身长度比len大的话,将去掉多余的部分 |
string |
ltrim(string A) |
去掉字符串A前面的空格 |
array<struct<string,double>> |
ngrams(array<array>, int N, int K, int pf) |
返回出现次数TOP K的的子序列,n表示子序列的长度 |
string |
parse_url(string urlString, string partToExtract [, string keyToExtract]) |
返回从URL中抽取指定部分的内容,参数url是URL字符串,而参数partToExtract是要抽取的部分,这个参数包含(HOST, PATH, QUERY, REF, PROTOCOL, AUTHORITY, FILE, and USERINFO |
string |
printf(String format, Obj… args) |
按照printf风格格式输出字符串 |
string |
regexp_extract(string subject, string pattern, int index) |
抽取字符串subject中符合正则表达式pattern的第index个部分的子字符串,注意些预定义字符的使用,如第二个参数如果使用’\s’将被匹配到s,’\s’才是匹配空格 |
string |
regexp_replace(string INITIAL_STRING, string PATTERN, string REPLACEMENT) |
按照Java正则表达式PATTERN将字符串INTIAL_STRING中符合条件的部分成REPLACEMENT所指定的字符串,如里REPLACEMENT这空的话,抽符合正则的部分将被去掉 |
string |
repeat(string str, int n) |
重复输出n次字符串str |
string |
reverse(string A) |
反转字符串 |
string |
rpad(string str, int len, string pad) |
从右边开始对字符串str使用字符串pad填充,最终len长度为止,如果字符串str本身长度比len大的话,将去掉多余的部分 |
string |
rtrim(string A) |
去掉字符串后面出现的空格 |
array<array> |
sentences(string str, string lang, string locale) |
字符串str将被转换成单词数组 |
string |
space(int n) |
返回n个空格 |
array |
split(string str, string pat) |
按照正则表达式pat来分割字符串str,并将分割后的数组字符串的形式返回 |
map<string,string> |
str_to_map(text[, delimiter1, delimiter2]) |
将字符串str按照指定分隔符转换成Map,第一个参数是需要转换字符串,第二个参数是键值对之间的分隔符,默认为逗号;第三个参数是键值之间的分隔符,默认为"=" |
string |
substr(string/binary A, int start) substring(string/binary A, int start) |
对于字符串A,从start位置开始截取字符串并返回 |
string |
substr(string/binary A, int start, int len) substring(string/binary A, int start, int len) |
对于二进制/字符串A,从start位置开始截取长度为length的字符串并返回 |
string |
substring_index(string A, string delim, int count) |
截取第count分隔符之前的字符串,如count为正则从左边开始截取,如果为负则从右边开始截取 |
string |
translate(string/char/varchar input, string/char/varchar from, string/char/varchar to) |
将input出现在from中的字符串替换成to中的字符串 |
string |
trim(string A) |
将字符串A前后出现的空格去掉 |
binary |
unbase64(string str) |
将64位的字符串转换二进制值 |
string |
upper(string A) ucase(string A) |
将字符串A中的字母转换成大写字母 |
string |
initcap(string A) |
将字符串A转换第一个字母大写其余字母的字符串 |
int |
levenshtein(string A, string B) |
计算两个字符串之间的差异大小 |
string |
soundex(string A) |
将普通字符串转换成soundex字符串 |