1
如何將發送給蜂巢的SELECT
請求中的非ascii字符替換爲ascii對應字符?刪除了重音符(é
,ê
,è
=>e
),並刪除了其他非字母數字字符(``)。蜂巢:非重音字母的重音字符
我知道我可以使用regexp_replace()
但我必須處理每一個重音/非重音對。當然,有更實際的東西?
如何將發送給蜂巢的SELECT
請求中的非ascii字符替換爲ascii對應字符?刪除了重音符(é
,ê
,è
=>e
),並刪除了其他非字母數字字符(``)。蜂巢:非重音字母的重音字符
我知道我可以使用regexp_replace()
但我必須處理每一個重音/非重音對。當然,有更實際的東西?
看來你要使用
String subjectString = "öäü";
subjectString = Normalizer.normalize(subjectString, Normalizer.Form.NFD);
正如 Replace non ASCII character from string
說明我一直在使用reflect嘗試,但不能使它工作由於Normalizer.Form
枚舉參數。
所以,看來你必須定義一個單行UDF:
public class NormalizerUDF extends UDF {
public String evaluate(String in) {
return Normalizer.normalize(in, Normalizer.Form.NFD);
}
}