1.特殊字符作为分隔符时需要使用\\进行转义(比如使用\\作为分隔符的话,则转义为\\\\) 这里对|分隔符字符串进行分割
String str = "a|b|c"; String[] strArr = str.split("\\|"); System.out.println(strArr.length); //这里输出3 for (int i = 0; i < strArr.length; ++i){ System.out.println(strArr[i]);//这里输出a b c }
2.注意对最后空字符的处理(通常有些情况在最后数据为空的时候只保留了个分隔符,如果不做处理的话,数据分割后的个数会偏离预期)
String str = "a|b|c|"; //注意这里在最后多了一个|分隔符 String[] strArr = str.split("\\|"); System.out.println(strArr.length); //这里输出3 for (int i = 0; i < strArr.length; ++i){ System.out.println(strArr[i]);//这里输出a b c }
如果你需要保留最后一个空字符的数据,则需要将split的第二个参数设置为-1
String str = "a|b|c|";//注意这里在最后多了一个|分隔符 String[] strArr = str.split("\\|",-1);//这里将第二个参数设置为-1 System.out.println(strArr.length); //这里输出4 for (int i = 0; i < strArr.length; ++i){ System.out.println(strArr[i]);//这里输出a b c 空字符串 }