2016-04-03 9 views
-2

ich wie eine Zeichenfolge haben aufzuspalten: „Obst (Apfel, Orange, Banane),“ und ich will mein Programm zurückzukehren:Wie eine Zeichenfolge mit verschiedenen Separatoren

fruit apple orange banana 

Das ist, was ich schrieb:

String string = "fruit(apple, orange, banana)"; 
string = string.trim(); 
String[] array = string.split(", | \\) | \\("); 

aber es funktioniert nicht.

+7

'string.splot'? Sind Sie im Ernst? – Tunaki

+2

Es kann funktionieren, wenn Sie 'split' anstelle von' splot' verwenden – Hackerdarshi

+3

split *. Mein Gott, es ist nur ein Tippfehler, entspannen – KingOfTheHill

Antwort

4

Sie fast da waren. Mit split() können Sie einen regulären Ausdruck verwenden, um eine gegebene Zeichenfolge um Übereinstimmungen mit dem angegebenen regulären Ausdruck aufzuteilen. Versuchen Sie dies, sollte es funktionieren:

String string = "fruit(apple, orange, banana)"; 
String[] array = string.split("[(,)]"); 

Die Elemente array können Leerzeichen am Anfang oder am Ende, die Sie beseitigen können mit dieser:

for (int i=0; i<array.length; i++) { 
    array[i] = array[i].trim(); 
} 
3

Versuchen Sie, diese Regex statt:

String[] array = string.split("[,\\(\\)]"); 
Verwandte Themen