2013-07-22 37 views
0

所以我想知道如何檢查一個字符串已由用戶輸入多個空格,如果它確實有多個空格之間的空格,我想讓用戶重新提示輸入。我正在使用do-while循環。這裏是格式:如何重新提示用戶輸入,如果他們輸入一個字符串與多個空格

Scanner scanner01 = new Scanner(System.in); 
String inputLast; 
do { 
    System.out.println("Enter a valid LAST name: "); 
    inputLast = scanner01.nextLine(); 
} while() 
+3

你爲什麼不只是刪除額外的空間,而不是討厭它的用戶? – mhafellner

+0

,因爲輸入可以在單詞之間至少有一個連續的空格。當用戶輸入2個連續的空格時,應該有錯誤。 –

回答

0

一個解決辦法是這樣(在此基礎上answer):

Scanner scanner01 = new Scanner(System.in); 
    String inputLast; 
    do { 
     System.out.println("Enter a valid LAST name: "); 
     inputLast = scanner01.nextLine(); 
     if(inputLast.length() - inputLast.replaceAll(" ", "").length() <= 1){ 
      break; 
     } 
    } while(true); 
0
String str = "Sam ple"; 
Pattern pattern = Pattern.compile("\\s{2,}"); 
Matcher matcher = pattern.matcher(str); 
boolean check = matcher.find(); 
相關問題