使用String.split函数进行字符串分割时须要注意下面两个事情函数
1.特殊字符做为分隔符时须要使用\\进行转义(好比使用\\做为分隔符的话,则转义为\\\\)spa
.$|()[{^?*+\\
好比这里对|分隔符字符串进行分割code
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.注意对最后空字符的处理(一般有些状况在最后数据为空的时候只保留了个分隔符,若是不作处理的话,数据分割后的个数会偏离预期)blog
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 空字符串
}
以上。it