2013-08-17 13 views
8

Dla dwóch ciągów próbek w zmiennej temperaturze, takich jak te:String.split() --- Jak traktować kolejne separatory jako jeden?

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

Chcę wykonać następujące czynności:

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

Ale chcę wynik będzie ten sam, który jest:

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

Oznacza to, że muszę potraktować ten podwójny "|" jako jeden ogranicznik. Czy jest jakiś sposób, aby to zrobić, nadal korzystając z String.split()?

Odpowiedz

13

Dodaj + dopasować jedno lub więcej wystąpień rurze:

temp.split("\\|+"); 
1

Spróbuj tego: -

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

Tak to jest możliwe

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); 
} 
} 
    } 
0

StringUtils metoda podzielone zdania, kolejne ograniczniki jako jeden ogranicznik.

org.apache.commons.lang.StringUtils.split("|"); 
Powiązane problemy