Java 在每两个字符后拆分一个字符串

Java 在每两个字符后拆分一个字符串,java,string,Java,String,我想在每两个字符后分割一个字符串 例如: String aString= "abcdef" 我想在分割后使用“ab cd ef” 我怎么做 谢谢:)如果您希望输出为带有额外空格的同一字符串,只需使用: String newString = aString.replaceAll("(..)", "$1 ") 您可以像下面这样轻松完成: String k = "sdfjsdf"; String s = ""; for (int i=0;i<k.length();i+

我想在每两个字符后分割一个字符串

例如:

String aString= "abcdef"
我想在分割后使用“ab cd ef”

我怎么做


谢谢:)

如果您希望输出为带有额外空格的同一字符串,只需使用:

String newString = aString.replaceAll("(..)", "$1 ")

您可以像下面这样轻松完成:

    String k = "sdfjsdf";
    String s = "";
    for (int i=0;i<k.length();i++){
        s+=k.charAt(i);
        if (i%2 != 0){
            s+=" ";
        }
    }
String k=“sdfjsdf”;
字符串s=“”;
对于(inti=0;i
String s=“teststr”;
StringBuilder tmp=新的StringBuilder();
对于(int i=0;i
使用正则表达式:

        String str= "abcdef";

        String[] array=str.split("(?<=\\G.{2})");

        System.out.println(java.util.Arrays.toString(array));       
String str=“abcdef”;
String[]array=str.split((?试试这个:

StringBuilder sb= new StringBuilder();
for (int i=0; i<s.length()-2;i+=2){
     sb.append(s.substring(i, i+2));
 if (i!=s.length()-3){
    sb.append(" ");
     }
}
StringBuilder sb=新建StringBuilder();

对于(int i=0;i这个负的正则表达式应该适合您:

String repl = "abcdef".replaceAll("..(?!$)", "$0 ");
PS:这将避免在最后一次匹配后追加空格,因此您将获得以下输出:

"ab cd ef"
而不是:

"ab cd ef "
publicstaticvoidmain(字符串[]args){
String st=“abcdefg”;
ArrayList数组=新的ArrayList();
int i=0;
while(ist.length())
j=标准长度();
add(st.substring(i,j));
i=j;
}
System.out.println(数组);
}
字符串aString=“abcdef”;
int partitionSize=2;
对于(inti=0;i试试这个

    String[] a = "abcdef".split("(?<=\\G..)");
    System.out.println(Arrays.asList(a));
也试试这个

    String aString= "abcdef";
    String[] arr=aString.split("(?<=\\G.{2})");
String aString=“abcdef”;

字符串[]arr=aString.split(“(?好的,你尝试了什么,发生了什么?你是否查看了
String
上的可用方法,找到了一种可以根据索引提取部分字符串的方法?substring可以帮助你^^^查看谢谢你的帮助。多谢你的帮助,这个答案非常简单,它与我想做的事情配合使用:
String repl=“abcdef.replaceAll(“…(!$)”,“$0”);
就是这样!但我建议
System.out.println(java.util.Arrays.toString(array));
而不是
。另外,把输出放在答案中,这样人们就能看到它的效果。@acdcjunior:谢谢你的建议。output[ab,cdef]对于使用Java8的Android。为什么?它也在使用Java8。我在www.jdoodle.com上试过了,它成功了。这个答案将得益于一个关于正在发生的事情以及你为什么这样做的小评论。非常感谢!你的答案是最简单的答案:你很受欢迎,很高兴它成功了。怎么了?@Leonid Veremchuk:#met用于Android和Java8的ooOutput[ab,cdef]。为什么?
String aString= "abcdef";       
int partitionSize=2;
for (int i=0; i<aString.length(); i+=partitionSize)
{
    System.out.println(aString.substring(i, Math.min(aString.length(), i + partitionSize)));
}
    String[] a = "abcdef".split("(?<=\\G..)");
    System.out.println(Arrays.asList(a));
[ab, cd, ef]
    String aString= "abcdef";
    String[] arr=aString.split("(?<=\\G.{2})");