Java中的我们可以利用 split 方法(Java.lang.string.split)把字符串按照指定的分割符进行分割,然后返回字符串数组,下面是string.split的用法实例及注意事项。
split 方法
将一个字符串分割为子字符串,然后将结果作为字符串数组返回。
stringObj.split([separator,[limit]])
stringObj:
必选项。要被分解的 String 对象或文字,该对象不会被split方法修改。
separator:
可选项。字符串或正则表达式对象,它标识了分隔字符串时使用的是一个还是多个字符。如果忽略该选项,返回包含整个字符串的单一元素数组。
limit:
可选项。该值用来限制返回数组中的元素个数(也就是最多分割成几个数组元素,只有为正数时有影响)
split 方法的结果是一个字符串数组,在 stingObj 中每个出现 separator 的位置都要进行分解。
注意:separator 不作为任何数组元素的部分返回。
实例1 基本用法:
1 String str = "nice to meet you"; 2 String[] strArray = str.split(" "); 3 4 // 注意foreach循环的用法 5 for (String string : strArray) { 6 System.out.println(string); 7 }
运行结果:
实例2 添加字符串个数限定:
1 String str = "nice to meet you"; 2 String[] strArray = str.split(" ", 2);//使用limit,最多分割成2个字符串 3 4 for (int i = 0; i < strArray.length; i++) { 5 System.out.println(strArray[i]); 6 }
运行结果:
实例3 特殊符号分隔符_1:
1 String str = "192.168.0.0"; 2 String[] strArray = str.split("\."); 3 4 for (int i = 0; i < strArray.length; i++) { 5 System.out.println(strArray[i]); 6 }
运行结果:
实例4 特殊符号分隔符_2:
1 String str = "nice\to\meet\you"; 2 String[] strArray = str.split("\\"); 3 4 for (String string : strArray) { 5 System.out.println(string); 6 }
运行结果:
实例5 连字符:
1 String str = "nice&to%meet#you"; 2 String[] strArray = str.split("&|#|%");// 注意没有前后顺序 3 4 for (String string : strArray) { 5 System.out.println(string); 6 }
运行结果:
注意事项:
1、分隔符为“.”: 无输出
“|”: 不能得到正确结果)转义字符时
“*”,“+”时出错抛出异常,都必须在前面加必须得加"\",如split(\|)(见实例3)。
2、如果用""作为分隔,就得写成这样:String.split("\\"),因为在Java中是用"\"来表示""的,字符串得写成这样:String Str="a\b\c";
转义字符,必须得加"\";(见实例4)
3、如果在一个字符串中有多个分隔符,可以用"|"作为连字符,比如:String str="Java string-split#test",可以用Str.split(" |-|#")把每个字符串分开;(见实例5)
主要整理自:http://blog.csdn.net/huangxy10/article/details/8186574