将字符串分成字符串数组

用户名

有源字符串

str = "one
 two
 three
 four
 five
 six
 seven
 eight
 nine" 

我想得到一个字符串数组

String[] mas; 
mas[0] = "one
 two
 three
 four" 

mas[1] =five 
six 
seven 
eight" 

mas[2] ="nine"

我想要一个超出我的功能范围的函数来执行字符串数组。并且在数组的每一行中应从原始字符串中获取4或6或N行

什么

使用String.split()正则表达式 \\s+(或\n+例如,这取决于你是什么确切想要的)。

如果需要,您可以连接2个或更多字符串,但是在使用数组之后split()-相当简单,请尝试一下!

祝你好运。如果您在实施第二部分时遇到麻烦,请随时提出任何问题。


编辑:似乎您在容忍字符串方面遇到了麻烦。应该通过简单的迭代和StringBuilder来完成

    int SIZE = 4; 
    String[] arr = str.split("\\s+");
    List<String> res = new ArrayList<>();
    StringBuilder sb = new StringBuilder();
    for (int i = 0; i < arr.length; i++) {
        sb.append(arr[i]).append('\n');
        if (i % SIZE == SIZE-1) { 
            res.add(sb.toString());
            sb  = new StringBuilder();
        }
    }
    if (sb.length() != 0) res.add(sb.toString());
    System.out.println(res);
}

请注意,它res是一个List<String>,如果您希望将其作为数组,则可以始终使用该toArray()方法。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章