2015-09-09 51 views
0

我有這個字符串:我如何從第二空間分割java中的字符串?

「上傳完成12345」

在java:

if (textforspeech.contains("upload completed")) 
           { 
            String[] split = textforspeech.split(" "); 
            textforspeech = split[0]; 
            status = (TextView) findViewById(R.id.progessStatus); 
            status.setText(split[1]); 
            MainActivity.this.initTTS(); 
           } 

的問題是,分割,從第一空間分割它。 所以我得到的變量textforspeech只是「上傳」,並在拆分[1]我越來越完成12345

但我需要它分裂它的方式:「上傳完成」在拆分[0]在拆分[1]僅12345

回答

1

試試這個:

 Pattern p = Pattern.compile("([\\D]*)([\\d]*)"); 
     Matcher m = p.matcher("upload completed12345"); 
     while (m.find()){ 
      System.out.println(m.group(1)); 
      System.out.println(m.group(2)); 
     } 
1

如果你只關心Upload completed,那麼你可以這樣做:

String completed = "Upload completed 12345"; 
for(String s : completed.split("\\s(?!(?=completed))")) { 
    System.out.println(s); 
} 

基本上它只是檢查,當一個空格後面跟隨已完成的單詞並且不會在這個空格上分割。