java String的Split方法, 分割字符时,保留最后的空字符串
1.介绍及常见用法;
在Java中,split()
方法用于将字符串按照指定的正则表达式分割成一个字符串数组。当正则表达式匹配到字符串的末尾时,split()
方法不会创建一个空字符串来填充数组的最后一个位置。
例如,如果我们有一个字符串"Hello,World,"
,并使用逗号作为分隔符,那么split()
方法将返回一个包含两个元素的数组:["Hello", "World"]
。注意,最后一个逗号后面没有空字符串。
例如:
public class Main {public static void main(String[] args) {String str = "Hello,World,";String[] splitStr = str.split(",");for (String s : splitStr) {System.out.println(s);}}
}
2.split(regex,limit) 方法介绍,实现保留最后空字符
这个函数还有另一种重载方式 :public String [] split (String regex, int limit) 看下说明limit 参数控制模式应用的次数,因此影响所得数组的长度。
(1)如果 limit > 0,则模式将被最多应用 limit - 1 次,数组的长度将不会大于 limit ,而且数组的最后一项将包含所有超出最后匹配的定界符的输入。
(2)如果 limit = 0,那么模式将被应用尽可能多的次数,数组可以是任何长度,并且结尾空字符串将被丢弃。默认就是0
(3)如果 limit 为<0,那么模式将被应用尽可能多的次数,而且数组可以是任何长度
所以如果要保留最后一个空字符,应该这样写
"20,45,".split(",",-1);