问题:
对于字符串 “boo:and:foo”,regex为o,limit为5时,返回:{ “b”, “”, “:and:f”, “”, “” } ,结果是如何实现的?
答:
对于这个String s[] = “boo:and:foo”.split(“o”,5);正则表达式拆分字符串,具体实现情况为:对于字符串 “boo:and:foo”,regex为o,limit为5时,splite方法首先去字符串里查找regex——o,然后把o做为分隔符,逐个把o去掉并且把字符串分开,比如,发现b后面有一个o,于是把这个o去掉,并且把字符串拆成”b”, “o:and:foo”两个字符串(注意:b后面的两个o已经去掉了一个),接下来看”o:and:foo”这个字符串,第一个字符就是o,于是o前面相当于一个空串,把这个o去掉,”o:and:foo”被分开成”“, “:and:foo”这样两个字符串,以此类推循环5次就是splite(“o”, 5)方法的作用。
其实这个方法一般这样用:
String[] arr = “11,22,33,44”.splite(“,”);
从而方便的得到一个字符串数组:arr={“11”, “22”, “33”, “44”};
String的split方法与正则表达式
最新推荐文章于 2023-05-12 15:30:15 发布