每隔这么多个字符就是空格

时间:2015-03-21 11:51:29

标签: java for-loop stringbuilder

我知道这段代码会在每个角色之间放置一个空格......

String nospaces = encrypt.replaceAll("\\s+","");
StringBuilder sb = new StringBuilder();

for (char c: nospaces.toCharArray()) {
    sb.append(c).append(" ");
}

System.out.println(sb.toString().trim());

如果您想在一定数量的字符后放入空格,例如5,你会怎么做?

2 个答案:

答案 0 :(得分:1)

您也可以使用replaceAll

 String withSpaces = nospaces.replaceAll("(.{5})", "$1 ");

答案 1 :(得分:0)

将您的代码更改为此类(未经测试):

char[] arr = nospaces.toCharArray();

for (int i=1; i<arr.length; i++) {   
    if (i % 5 == 0) { // after 5 characters, add space 
        sb.append(" ");
    }
    sb.append(arr[i);
}