2011-10-03 190 views
7

有沒有人知道是否有一個堅實的基於庫的方法來實現以下目標。Java根據分隔符將字符串拆分爲2個字符串。

說我有一個字符串:

"name1, name2, name3, name4" 

,我想它解析爲基於逗號和2串。

我想串看起來像這樣

string1 = "name1"; 
string2 = "name2, name3, name4"; 

什麼想法? 謝謝,米

回答

6
Pattern pattern = Pattern.compile(", *"); 
Matcher matcher = pattern.matcher(inputString); 
if (matcher.find()) { 
    string1 = inputString.substring(0, matcher.start()); 
    string2 = inputString.substring(matcher.end()); 
} 
+0

以防萬一空間不見或者會有多個空間。 –

22

你可以使用yourString.split(", ", 2)

String str = "name1, name2, name3, name4"; 

String[] parts = str.split(", ", 2); 
String string1 = parts[0]; 
String string2 = parts[1]; 

System.out.println(string1); // prints name1 
System.out.println(string2); // prints name2, name3, name4 

你也可以使用yourString.indexOf(", ")yourString.substring(...)

+0

+1:如果沒有分隔符,只會得到一個字符串。 ;) –

+0

是的...... op作爲UB離開了這個案例:-) – aioobe

+0

有了這個方法,我正確地認爲我會失去字符串中的逗號嗎?我希望他們留在第二串 – mAndroid

相關問題