2013-08-19 74 views
-1

我正在逐行解析一些文本文件,我的需要是拆分由多個空格分隔的單詞的行。請建議我如何做到這一點拆分由多個空格分隔的單詞的行

示例文本

John  is  working in London 

所需的輸出

John 
is 
working 
in London 
+3

那你試試? – Nanne

回答

4

使用\s{2,}匹配多個空格:

String text = "John  is  working in London"; 
String[] words = text.split("\\s{2,}"); 
for (String word : words) 
    System.out.println(word); 
+0

不錯的和快速的答案+1 – SpringLearner

0

這會爲你工作。 \1+將取代一個或多個空格。

String str="John  is  working in London"; 
     String[] arr=str.replaceAll("([\" \"])\\1+"," ").split(" "); 
     for(String i:arr){ 
      System.out.println(i.trim()); 
     } 

直播Demo

出把

John 
is 
working 
in 
London 
+0

這將工作的單詞分隔和一個空間單詞? – Qwerky

+0

@Qwerky是的。你可以嘗試一下 –

0

試試這個簡單的正則表達式:

String[] words = str.split(" +"); 
0

可以使用java.util.StringTokenizer的類。

StringTokenizer st = new StringTokenizer("John  is  working in London"," ",false); 
while (st.hasMoreElements()) { 
     System.out.println("StringTokenizer Output: " + st.nextElement()); 
    } 

輸出:

John 
is 
working 
in 
London 
相關問題