Return Type |
Name(Signature) |
Description |
---|---|---|
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<string>>, array<string>, int K, int pf) |
与ngram类似,但context_ngram()允许你预算指定上下文(数组)来去查找子序列 |
string |
concat_ws(string SEP, string A, string B...) |
与concat()类似,但使用指定的分隔符进行分隔 |
string |
concat_ws(string SEP, array<string>) |
拼接Array中的元素并用指定分隔符进行分隔 |
string |
decode(binary bin, string charset) |
使用指定的字符集charset将二进制值bin解码成字符串,支持的字符集有:'US-ASCII', 'ISO-8859-1', 'UTF-8', 'UTF-16BE', 'UTF-16LE', 'UTF-16',如果任意输入参数为NULL都将返回NULL |
binary |
encode(string src, string charset) |
使用指定的字符集charset将字符串编码成二进制值,支持的字符集有:'US-ASCII', 'ISO-8859-1', 'UTF-8', 'UTF-16BE', 'UTF-16LE', 'UTF-16',如果任一输入参数为NULL都将返回NULL |
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<string>>, 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) 例如:parse_url('http://facebook.com/path1/p.php?k1=v1&k2=v2#Ref1', 'HOST') ='facebook.com',如果参数partToExtract值为QUERY则必须指定第三个参数key 如:parse_url('http://facebook.com/path1/p.php?k1=v1&k2=v2#Ref1', 'QUERY', 'k1') =‘v1’ |
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这空的话,抽符合正则的部分将被去掉 如:regexp_replace("foobar", "oo|ar", "") = 'fb.' 注意些预定义字符的使用,如第二个参数如果使用'\s'将被匹配到s,'\\s'才是匹配空格 |
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<string>> |
sentences(string str, string lang, string locale) |
字符串str将被转换成单词数组, 如:sentences('Hello there! How are you?') =( ("Hello", "there"), ("How", "are", "you") ) |
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中的字符串 如:translate("MOBIN","BIN","M")="MOM" |
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) | 计算两个字符串之间的差异大小 如:levenshtein('kitten', 'sitting') = 3 |
string | soundex(string A) | 将普通字符串转换成soundex字符串 |
Hive(三)-内置函数-字符函数
猜你喜欢
转载自www.cnblogs.com/sunziying/p/9068849.html
今日推荐
周排行