Как обеспечить, чтобы все «похожие» символы можно было нормализовать в Java - PullRequest
0 голосов
/ 24 января 2019

Я немного узнаю о символах UTF-8 и о том, как они создаются.

Я работаю над методом, который будет принимать входную строку и преобразовывать любые "специальные" символы в их базовые.эквивалент.

Например, я ожидал, что значения "c" ниже приведут к выводу "c":

"ç" => "c"
"ć" => "c"
"č" => "c"
"ⓒ" => "c"
"?" => "c"

Однако только "ⓒ" нормализуется до "c".

Я использую этот метод:

private String getNormalizedInputText() {
    //String input = getIntent().getStringExtra(Intent.EXTRA_PROCESS_TEXT);
    String input = "ç ć č ⓒ ?";

    String normalizedInput =  Normalizer.normalize(input, Normalizer.Form.NFKC);

    Log.d("Normalized Input", normalizedInput);

    return normalizedInput;
}

РЕДАКТИРОВАТЬ: Можно ли это сделать математически?

...