2015-11-04 64 views
4

我有一個字符串象下面這樣:如何分割字符串,如果不同的字符發生?

String str = "77755529"; 

我想,如果不同數量的發生,即結果應該是像分割後下方拆分此字符串:

str1 = "777"; 
str2 = "555"; 
str3 = "2"; 
str4 = "9"; 

我與分裂嘗試過,但不能做了。

回答

8

試試這個:

String str = "77755529"; 
String[] res = str.split("(?<=(.))(?!\\1)"); 

IDEONE SAMPLE

2

你可以做匹配。

List<String> lst = new ArrayList<String>(); 
Matcher m = Pattern.compile("(\\d)\\1+|\\d+").matcher(s); 
while(m.find()) { 
    lst.add(m.group()); 
} 
System.out.println(lst);