【问题标题】:Need some help in Java String在 Java 字符串中需要一些帮助
【发布时间】:2014-09-08 14:20:14
【问题描述】:

我在 java 中有一个字符串,比如

String str="gudmor,ningeveryone,Have a great day,thankssssssssssss";

如果字符串的长度超过 10 并且使用 deliemeter ",",我需要拆分字符串。如果注视中的第 10 个字符不是“,”,那么我必须将字符串从上一次出现的 "," 中拆分出来,长度为 10。

对于上面的字符串集,我需要这样的输出,

 gudmor

 ningeveryo

 ne

 Have a gre

 at day

 thanksssss

 sssssss

【问题讨论】:

标签: java string


【解决方案1】:

我不确定我是否理解你,但请尝试以下代码:

public class Main {
    public static void main(String[] argv) {
        String input = "gudmor,ningeveryone,Have a great day,thankssssssssssss";
        String[] firstSplit = input.split(",");
        List<String> result = new ArrayList<>();
        String[] tmpArray;
        for (String elem : firstSplit) {
            if (elem.length() <= 10) {
                result.add(elem);
            } else {
                for(int i = 0;i < elem.length()/10;i++) {
                    result.add(elem.substring(i*10,(i+1)*10));
                }
                if(elem.length() % 10 != 0) {
                    result.add(elem.substring(elem.length() - (elem.length() % 10)));
                }
            }
        }
    }
}

【讨论】: