2011-10-03 195 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

相关问题