0

ユーザーが複数のスペースを入力した文字列をチェックする方法を知りたいのですが、単語間に複数のスペースがある場合は、ユーザーに入力を再プロンプトする必要があります。do-while ループを使用しています。フォーマットは次のとおりです。

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

3 に答える 3

0

1つの解決策はこれです(この回答に基づく):

   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);
于 2013-07-22T15:27:56.117 に答える
0
String str = "Sam  ple";
Pattern pattern = Pattern.compile("\\s{2,}");
Matcher matcher = pattern.matcher(str);
boolean check = matcher.find();
于 2013-07-22T15:27:59.693 に答える
0

複数のスペースを単一のスペースに置き換える方法については、how-to-replace-2-or-more-spaces-with-single-space-in-string を参照してください。

于 2013-07-22T15:11:15.693 に答える