public class BinaryStringDataUtil extends Object
BinaryStringData.| Modifier and Type | Field and Description |
|---|---|
static org.apache.flink.table.data.binary.BinaryStringData[] |
EMPTY_STRING_ARRAY |
| Constructor and Description |
|---|
BinaryStringDataUtil() |
| Modifier and Type | Method and Description |
|---|---|
static org.apache.flink.table.data.binary.BinaryStringData |
concat(org.apache.flink.table.data.binary.BinaryStringData... inputs)
Concatenates input strings together into a single string.
|
static org.apache.flink.table.data.binary.BinaryStringData |
concat(Iterable<org.apache.flink.table.data.binary.BinaryStringData> inputs) |
static org.apache.flink.table.data.binary.BinaryStringData |
concatWs(org.apache.flink.table.data.binary.BinaryStringData separator,
org.apache.flink.table.data.binary.BinaryStringData... inputs)
Concatenates input strings together into a single string using the separator.
|
static org.apache.flink.table.data.binary.BinaryStringData |
concatWs(org.apache.flink.table.data.binary.BinaryStringData separator,
Iterable<org.apache.flink.table.data.binary.BinaryStringData> inputs) |
static org.apache.flink.table.data.binary.BinaryStringData |
hash(org.apache.flink.table.data.binary.BinaryStringData str,
MessageDigest md)
Calculate the hash value of a given string use
MessageDigest. |
static org.apache.flink.table.data.binary.BinaryStringData |
hash(org.apache.flink.table.data.binary.BinaryStringData str,
String algorithm) |
static org.apache.flink.table.data.binary.BinaryStringData |
hash(byte[] bytes,
MessageDigest md)
Calculate the hash value of the given bytes use
MessageDigest. |
static boolean |
isSpaceString(org.apache.flink.table.data.binary.BinaryStringData str) |
static org.apache.flink.table.data.binary.BinaryStringData |
keyValue(org.apache.flink.table.data.binary.BinaryStringData str,
byte split1,
byte split2,
org.apache.flink.table.data.binary.BinaryStringData keyName)
Parse target string as key-value string and return the value matches key name.
|
static org.apache.flink.table.data.binary.BinaryStringData |
reverse(org.apache.flink.table.data.binary.BinaryStringData str)
Reverse each character in current string.
|
static String |
safeToString(org.apache.flink.table.data.binary.BinaryStringData str) |
static org.apache.flink.table.data.binary.BinaryStringData[] |
splitByWholeSeparatorPreserveAllTokens(org.apache.flink.table.data.binary.BinaryStringData str,
org.apache.flink.table.data.binary.BinaryStringData separator)
Splits the provided text into an array, separator string specified.
|
static org.apache.flink.table.data.binary.BinaryStringData |
substringSQL(org.apache.flink.table.data.binary.BinaryStringData str,
int pos) |
static org.apache.flink.table.data.binary.BinaryStringData |
substringSQL(org.apache.flink.table.data.binary.BinaryStringData str,
int pos,
int length) |
static Boolean |
toBooleanSQL(org.apache.flink.table.data.binary.BinaryStringData str)
Decide boolean representation of a string.
|
static Byte |
toByte(org.apache.flink.table.data.binary.BinaryStringData str) |
static org.apache.flink.table.data.DecimalData |
toDecimal(org.apache.flink.table.data.binary.BinaryStringData str,
int precision,
int scale)
Parses this BinaryStringData to DecimalData.
|
static Double |
toDouble(org.apache.flink.table.data.binary.BinaryStringData str) |
static Float |
toFloat(org.apache.flink.table.data.binary.BinaryStringData str) |
static Integer |
toInt(org.apache.flink.table.data.binary.BinaryStringData str)
Parses this BinaryStringData to Int.
|
static Long |
toLong(org.apache.flink.table.data.binary.BinaryStringData str)
Parses this BinaryStringData to Long.
|
static Short |
toShort(org.apache.flink.table.data.binary.BinaryStringData str) |
static org.apache.flink.table.data.binary.BinaryStringData |
trim(org.apache.flink.table.data.binary.BinaryStringData str,
org.apache.flink.table.data.binary.BinaryStringData trimStr)
Walk each character of current string from both ends, remove the character if it is in trim
string.
|
static org.apache.flink.table.data.binary.BinaryStringData |
trim(org.apache.flink.table.data.binary.BinaryStringData str,
boolean leading,
boolean trailing,
org.apache.flink.table.data.binary.BinaryStringData seek) |
static org.apache.flink.table.data.binary.BinaryStringData |
trimLeft(org.apache.flink.table.data.binary.BinaryStringData str) |
static org.apache.flink.table.data.binary.BinaryStringData |
trimLeft(org.apache.flink.table.data.binary.BinaryStringData str,
org.apache.flink.table.data.binary.BinaryStringData trimStr)
Walk each character of current string from left end, remove the character if it is in trim
string.
|
static org.apache.flink.table.data.binary.BinaryStringData |
trimRight(org.apache.flink.table.data.binary.BinaryStringData str) |
static org.apache.flink.table.data.binary.BinaryStringData |
trimRight(org.apache.flink.table.data.binary.BinaryStringData str,
org.apache.flink.table.data.binary.BinaryStringData trimStr)
Walk each character of current string from right end, remove the character if it is in trim
string.
|
public static final org.apache.flink.table.data.binary.BinaryStringData[] EMPTY_STRING_ARRAY
public static org.apache.flink.table.data.binary.BinaryStringData[] splitByWholeSeparatorPreserveAllTokens(org.apache.flink.table.data.binary.BinaryStringData str,
org.apache.flink.table.data.binary.BinaryStringData separator)
The separator is not included in the returned String array. Adjacent separators are treated as separators for empty tokens.
A null separator splits on whitespace.
"".splitByWholeSeparatorPreserveAllTokens(*) = []
"ab de fg".splitByWholeSeparatorPreserveAllTokens(null) = ["ab", "de", "fg"]
"ab de fg".splitByWholeSeparatorPreserveAllTokens(null) = ["ab", "", "", "de", "fg"]
"ab:cd:ef".splitByWholeSeparatorPreserveAllTokens(":") = ["ab", "cd", "ef"]
"ab-!-cd-!-ef".splitByWholeSeparatorPreserveAllTokens("-!-") = ["ab", "cd", "ef"]
Note: returned binary strings reuse memory segments from the input str.
separator - String containing the String to be used as a delimiter, null splits
on whitespacenull if null String was inputpublic static Boolean toBooleanSQL(org.apache.flink.table.data.binary.BinaryStringData str)
public static org.apache.flink.table.data.binary.BinaryStringData hash(byte[] bytes,
MessageDigest md)
MessageDigest.public static org.apache.flink.table.data.binary.BinaryStringData hash(org.apache.flink.table.data.binary.BinaryStringData str,
MessageDigest md)
MessageDigest.public static org.apache.flink.table.data.binary.BinaryStringData hash(org.apache.flink.table.data.binary.BinaryStringData str,
String algorithm)
throws NoSuchAlgorithmException
NoSuchAlgorithmExceptionpublic static org.apache.flink.table.data.DecimalData toDecimal(org.apache.flink.table.data.binary.BinaryStringData str,
int precision,
int scale)
NumberFormatException - if the parsing failed.public static Long toLong(org.apache.flink.table.data.binary.BinaryStringData str)
Note that, in this method we accumulate the result in negative format, and convert it to positive format at the end, if this string is not started with '-'. This is because min value is bigger than max value in digits, e.g. Long.MAX_VALUE is '9223372036854775807' and Long.MIN_VALUE is '-9223372036854775808'.
This code is mostly copied from LazyLong.parseLong in Hive.
public static Integer toInt(org.apache.flink.table.data.binary.BinaryStringData str)
Note that, in this method we accumulate the result in negative format, and convert it to positive format at the end, if this string is not started with '-'. This is because min value is bigger than max value in digits, e.g. Integer.MAX_VALUE is '2147483647' and Integer.MIN_VALUE is '-2147483648'.
This code is mostly copied from LazyInt.parseInt in Hive.
Note that, this method is almost same as `toLong`, but we leave it duplicated for performance reasons, like Hive does.
public static Short toShort(org.apache.flink.table.data.binary.BinaryStringData str)
public static Byte toByte(org.apache.flink.table.data.binary.BinaryStringData str)
public static Double toDouble(org.apache.flink.table.data.binary.BinaryStringData str)
public static Float toFloat(org.apache.flink.table.data.binary.BinaryStringData str)
public static org.apache.flink.table.data.binary.BinaryStringData keyValue(org.apache.flink.table.data.binary.BinaryStringData str,
byte split1,
byte split2,
org.apache.flink.table.data.binary.BinaryStringData keyName)
split1 - separator between key-value tuple.split2 - separator between key and value.keyName - name of the key whose value you want return.public static org.apache.flink.table.data.binary.BinaryStringData substringSQL(org.apache.flink.table.data.binary.BinaryStringData str,
int pos)
public static org.apache.flink.table.data.binary.BinaryStringData substringSQL(org.apache.flink.table.data.binary.BinaryStringData str,
int pos,
int length)
public static org.apache.flink.table.data.binary.BinaryStringData concat(org.apache.flink.table.data.binary.BinaryStringData... inputs)
public static org.apache.flink.table.data.binary.BinaryStringData concat(Iterable<org.apache.flink.table.data.binary.BinaryStringData> inputs)
public static org.apache.flink.table.data.binary.BinaryStringData concatWs(org.apache.flink.table.data.binary.BinaryStringData separator,
org.apache.flink.table.data.binary.BinaryStringData... inputs)
Note: CONCAT_WS() does not skip any empty strings, however it does skip any NULL values after the separator. For example, concat_ws(",", "a", null, "c") would yield "a,c".
public static org.apache.flink.table.data.binary.BinaryStringData concatWs(org.apache.flink.table.data.binary.BinaryStringData separator,
Iterable<org.apache.flink.table.data.binary.BinaryStringData> inputs)
public static org.apache.flink.table.data.binary.BinaryStringData reverse(org.apache.flink.table.data.binary.BinaryStringData str)
public static org.apache.flink.table.data.binary.BinaryStringData trim(org.apache.flink.table.data.binary.BinaryStringData str,
org.apache.flink.table.data.binary.BinaryStringData trimStr)
trimStr - the trim stringpublic static org.apache.flink.table.data.binary.BinaryStringData trimLeft(org.apache.flink.table.data.binary.BinaryStringData str)
public static boolean isSpaceString(org.apache.flink.table.data.binary.BinaryStringData str)
public static org.apache.flink.table.data.binary.BinaryStringData trimLeft(org.apache.flink.table.data.binary.BinaryStringData str,
org.apache.flink.table.data.binary.BinaryStringData trimStr)
trimStr - the trim stringpublic static org.apache.flink.table.data.binary.BinaryStringData trimRight(org.apache.flink.table.data.binary.BinaryStringData str)
public static org.apache.flink.table.data.binary.BinaryStringData trimRight(org.apache.flink.table.data.binary.BinaryStringData str,
org.apache.flink.table.data.binary.BinaryStringData trimStr)
trimStr - the trim stringpublic static org.apache.flink.table.data.binary.BinaryStringData trim(org.apache.flink.table.data.binary.BinaryStringData str,
boolean leading,
boolean trailing,
org.apache.flink.table.data.binary.BinaryStringData seek)
public static String safeToString(org.apache.flink.table.data.binary.BinaryStringData str)
Copyright © 2014–2022 The Apache Software Foundation. All rights reserved.