java – Android,String.split(String regex)不会拆分所有字符串

我有String.split(String regex)的问题.我想将我的字符串分成4个字符的部分.

String stringa = "1111110000000000"
String [] result = stringa.split("(?<=\\G....)")

当我打印结果我期望1111,1100,0000,0000但结果是1111,110000000000.
我怎么解决?谢谢.

最佳答案 这里 a solution without regex –

从字符串结束开始,提取4个或更少的字符并将它们添加到List:

public static void main (String[] args) {
    String stringa = "11111110000000000";
    List<String> result = new ArrayList<>();

    for (int endIndex = stringa.length(); endIndex  >= 0; endIndex  -= 4) {
        int beginIndex = Math.max(0, endIndex - 4);
        String str = stringa.substring(beginIndex, endIndex);
        result.add(0, str);
    }

    System.out.println(result);
}

这导致输出:

[1, 1111, 1100, 0000, 0000]
点赞