2013-08-17 6 views
8

जैसे कि ये चर अस्थायी में दो नमूना तार के लिए:String.split() --- मैं लगातार delimiters का इलाज कैसे करूँ?

(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() का उपयोग करते समय ऐसा करने का कोई तरीका है?

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

उत्तर

13

एक + पाइप के एक से अधिक मैच के लिए जोड़ें एक delimiter के रूप में लगातार delimiters।

org.apache.commons.lang.StringUtils.split("|"); 
1

इस प्रयास करें:

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

StringUtils विभाजन विधि मानता है -:

temp.split("\\|+"); 
संबंधित मुद्दे