0

我尝试从 String 中提取 5 个字形,但无法正确实现。我有这样的字符串:

我最后一次尝试是使用 BreakIterator:

public String truncate(String input) {
        BreakIterator it = BreakIterator.getCharacterInstance();
        it.setText(input);
        String res = "";
        for(int i=0;i<5;i++)
            res += printAt(it,i,input);        
        return res;
    }

    public static String printAt(BreakIterator boundary, int pos, String source) {
        int end = boundary.following(pos);
        int start = boundary.previous();
        return source.substring(start,end);
    }

有人可以帮我完成这项任务吗?

先感谢您。

4

1 回答 1

0

您的输入包含以 Unicode 表示的特殊字符,因此您应该使用代码点。请参阅此处substringByCodepoint(String inputStr, int codePointStart, int codePointEnd)的方法实现示例。

于 2021-08-06T12:33:56.207 回答