15

对于变量 temp 中的两个示例字符串,例如:

(1) "|RYVG|111|9|"
(2) "|RYVG|111||9|"

我想做以下事情:

String splitRating[] = temp.split("\\|",);

但我希望结果相同,即:

splitrating[0] = ""
splitrating[1] = "RYVG"
splitrating[2] = "111"
splitrating[3] = "9

这意味着我需要处理那个双“|” 作为一个分隔符。有没有办法在使用的同时做到这一点String.split()

4

4 回答 4

19

添加 a+以匹配管道的一个或多个实例:

temp.split("\\|+");
于 2013-08-17T12:21:44.970 回答
1

尝试这个:-

String splitRating[] = temp.split("\\|+");
于 2013-08-17T12:22:32.323 回答
0

对的,这是可能的

 class  Split
{
public static void main(String[] args) 
{
    String temp="|RYVG|111||9|";

    String splitRating[] = temp.split("\\|+");

    for(String split:splitRating){
    System.out.println(split);
}
}
    }
于 2013-08-17T12:50:22.097 回答
0

StringUtilssplit 方法将连续的分隔符视为一个分隔符。

org.apache.commons.lang.StringUtils.split("|"); 
于 2017-08-04T09:38:13.180 回答