split

http://frankman.blog.163.com/blog/static/3780069920101172137542/

Java中用split方法拆分特殊字符工作相关 2010-12-07 14:13:07 阅读72 评论0   字号:大中小 订阅
在应用 String.split法子分隔字符串时,分隔符如果用到一些特殊字符,可能会得不到我们预期的效果。




使用用转义符 + 特殊字符的方法,可以解决这一问题,当然这也适用于*,+,'等。


String[] a1 = "aaa|bbb|ccc".split("|"); // 得不到预期的效果——a1.length为12


a1 = "aaa|bbb|ccc".split("\\|"); // 这样才能得到预期的效果——a1.length为3




不过不要以为这样就可以解决这个问题,[color=blue][/color][size=x-large][/size]当出现这种情况的时候,还是无法得到预期的效果……


String[] a1 = "aaa||ccc|||".split("\\|"); // 还是无法得到预期的效果——a1.length为3


使用split拆分的时候,默认情况下会把末尾的空值舍弃。要注意的是中间的空值不会舍弃。




那么如何保留末尾的空值呢?嘿嘿,可以使用下面的方法。


String[] a1 = "aaa||ccc|||".split("\\|", -1); // 得到预期的效果——a1.length为6

你可能感兴趣的:(工作,Blog)