`

String.split() 分隔符不能保存后面的空字符串问题

    博客分类:
  • Java
阅读更多

String 自带的Split 分割字符串类中不会把分割字符串后的空字符串添加到数组当中,

 

例1: 

    String[] str = msg.split("000|111|222||") 

    进行分割后字符串的长度为2,只能得到str[0],str[1],str[2],后面的str[3],str[4]是不存在的,

如果直接访问str[3],str[4]会发生以下错误:

    java.lang.ArrayIndexOutOfBoundsException

 

解决方法: 

   String[] str = msg.split("000|111|222||",4);//4:指定分隔的次数,这样就可以把控字符串也传入数组里面 

 

 (网上找的方法,没测试过)

解决问题:使用org.apache.commons.lang.StringUtils.splitPreserveAllTokens 方法

                     String 操作类  commons-lang.jar

 

 

例2: 

    String[] str = msg.split("000|111|222||333") 进行分割后字符串的长度为4,可以得到str[0],str[1],str[2],str[3],str[4]

 

分享到:
评论

相关推荐

    Python split() 函数拆分字符串将字符串转化为列的方法

    函数:split() ...str: 表示为分隔符,默认为空格,但是不能为空(”)。若字符串中没有分隔符,则把整个字符串作为列表的一个元素 num:表示分割次数。如果存在参数num,则仅分隔成 num+1 个子字符串

    python分割和拼接字符串

    关于string的split 和 join 方法对导入os模块进行os.path.splie()/os.path.join() 貌似是处理机制不一样,但是功能上一样。1.string.split(str=’ ‘,num=string.count(str)): 以...注意:分隔符不能为空,否则会出错

    asp字符串处理函数大全

    Split Split(string1,delimiter[,count[,start]]) 将字符串根据delimiter拆分成一维数组,其中delimiter用于标识子字符串界限。如果省略,使用空格("")作为分隔符。count返回的子字符串数目,-1指示返回所有子字符串...

    vb.net字符串转换

    Split Split(string1,delimiter[, count[, start]]) 将字符串根据delimiter拆分成一维数组,其中delimiter用于标识子字符串界限。如果省略,使用空格("")作为分隔符。 count 返回的子字符串数目,-1 指示返回所有子...

    C++常用字符串分割方法实例汇总

    参数说明:str为要分解的字符串,delim为分隔符字符串。 返回值:从str开头开始的一个个被分割的串。当没有被分割的串时则返回NULL。 其它:strtok函数线程不安全,可以使用strtok_r替代。 示例: //借助strtok实现...

    java字符串转数组.docx

    在Java中,将字符串转换为数组可以通过以下几种方式实现: ...这个方法将字符串根据指定的分隔符分割成字符串数组。 示例:String[] stringArray = str.split(","); 使用java.util.Arrays类的copyOfRange()方法:

    C#中使用Split方法拆分字符串实例

    C#中有一个字符串拆分函数String.Split(),可以用于将一个字符串,拆分为一个字符串数组。在拆分的时候,需要一个拆分的“分隔符”。这个“分隔符”可以是一个字符,也可以是多个字符组成一个字符串。 先举一个简的...

    delphi7分割字符串

    delphi7分割字符串

    C# Split函数根据特定分隔符分割字符串的操作

    在C#程序开发过程中,很多时候可能需要将字符串根据特定的分割字符分割成字符或者List集合,例如根据逗号将字符串分割为数组,或者根据竖线将字符串分割成数组,C#中提供了Split()函数来快速将字符串分割成数组形式...

    Python字符串split及rsplit方法原理详解

    split()方法通过指定分隔符对字符串进行切片,如果参数num有指定值,则分隔num+1个子字符串,默认分隔符为所有空字符,包括空格、换行(\n)、制表符(\t)等 rstrip()方法通过 2.语法 str.split([sep=None][,count=S....

    python中的split()函数和os.path.split()函数使用详解

    str: 表示为分隔符,默认为空格,但是不能为空串。若字符串中没有分隔符,则把整个字符串作为列表的一个元素。 num:表示分割次数。如果存在参数num,则仅分隔成 num+1 个子字符串。 [n]: 表示选取第n个分片(从0...

    javascript函数大全

    replaceString)替换现有字符串. 100.string.split(分隔符)返回一个数组存储值. 101.string.substr(start[,length])取从第几位到指定长度的字符串. 102.string.toLowerCase()使字符串全部变为小写. 103....

    Python cookbook(字符串与文本)针对任意多的分隔符拆分字符串操作示例

    问题:将分隔符(以及分隔符之间的空格)不一致的字符串拆分为不同的字段; 解决方案:使用更为灵活的re.split()方法,该方法可以为分隔符指定多个模式。 说明:字符串对象的split()只能处理简单的情况,而且不支持...

    SQL根据指定分隔符分解字符串实现步骤

    如果有一个字符串 eg: “sun,star,moon,clouds”,想要在MS SQL中根据给定的分隔符’,’把这个字符串分解成各个元素[sun] [star] [moon] [clouds],如何实现呢?为此,创建一个Function,代码如下: 代码如下: CREATE ...

    举例详解Python中的split()函数的使用方法

    函数:split() Python中有split()和os...str: 表示为分隔符,默认为空格,但是不能为空(”)。若字符串中没有分隔符,则把整个字符串作为列表的一个元素 num:表示分割次数。如果存在参数num,则仅分隔成 num+1 个子字

    Mysql通过存储过程分割字符串为数组

    返回从字符串str的第count个出现的分隔符delim之后的子串。如果count是正数,返回最后的分隔符到左边(从左边数) 的所有字符。如果count是负数,返回最后的分隔符到右边的所有字符(从右边数)。 REPLACE(str,from_str,...

    splitStrJS:多个分隔符作为数组拆分字符串功能(它既支持数组作为分隔符,也支持一个分隔符作为字符串)

    splitStrJS 多个分隔符作为数组拆分字符串功能(它既支持数组作为分隔符,也支持一个分隔符作为字符串) 没有本机函数或方法可以支持提供多个分隔符的数组,唯一的本机方法是使用正则表达式作为分隔符。 将split与...

    stringstream操纵string的方法总结

    之前在用C#写代码的时候,用过split函数,可以把一个字符串根据某个分隔符分成若干个字符串数组。在用C++操纵字符串的时候,我一直使用很笨的遍历的方法。为此,我问候过很多次C++标准委员会。直到某一天,我做了一...

    在Python中用split()方法分割字符串的使用介绍

    split()方法返回的字符串中的所有单词的列表,使用str作为分隔符(如果在未指定的所有空格分割),可选择限当前分割为数量num。 语法 以下是split()方法的语法: str.split(str=, num=string.count(str)). 参数 str...

    python把一个字符串切开的实例方法

    split() 通过指定分隔符对字符串进行切片,如果参数 num 有指定值,则分隔 num+1 个子字符串,并返回分割后的字符串列表。 语法: str.split(str="", num=string.count(str)) 参数: str — 分隔符,默认为所有...

Global site tag (gtag.js) - Google Analytics