2016-12-22 7 views
-5

私は2番目のプログラミング科目に入ったばかりですが、私の教授は私に教えなかったことを教えてくれました。人々インターネットのヘルプを検索すると、ユーザー入力を使用して文字列の長さに特殊文字と母音をカウントしない方法

十分ではありませんので、だから私が探しているの出力は、使用してchar型の配列にString入力を変換し、Scannerを使用して、このような何かを試してみてください。この

Enter word : #$nsaei! 
result = 2 
+1

答え[ここ](http://stackoverflow.com/questions/15562265/checking-for-alphabets-in-a-string-in-java)を見てください。あなたが探しているものを得るためには簡単な調整が必要です – Dana

+0

http://stackoverflow.com/help/on-topic –

+0

あなたの状況や直面している問題の詳細については、質問を編集してください。 –

答えて

0

のようなものですtoCharArray()を入力し、各文字をisLetterOrDigitでチェックし、charアクターは、母音indexOf()を使用して"AEIOUaeiou"ではなく、従ってない:

import java.util.Scanner; 

class Main { 
    public static void main(String[] args) { 
    Scanner sc = new Scanner(System.in); 
    System.out.print("Please enter a word:"); 
    String input = sc.nextLine(); 

    int consonantOrDigits = 0; 
    for(char c : input.toCharArray()) { 
     if(Character.isLetterOrDigit(c) && "AEIOUaeiou".indexOf(c) == -1) 
     consonantOrDigits++; 
    } 

    System.out.println(consonantOrDigits); 
    } 
} 

は、あなたがそれをこの方法で行うことができますhere!

+0

うわーありがとう男私はこれを後で調べるつもりだ しかし、母音も数えなければ(これは将来私を助けるかもしれないので) –

0

それを試してみてください。

System.out.println("Enter word: "); 
Scanner sc = new Scanner(System.in); 
String input = sc.nextLine(); 

int count = 0; 

for (int i = 0; i < input.length(); i++) { 
    if (String.valueOf(input.charAt(i)).matches("^[a-zA-Z0-9&&[^aeuio]]*$")) { 
     count++; 
    } 
} 

System.out.println("result: " + count); 

・ホープ、このことができます。

+0

'Enter word: #$ nsaei! 結果:5' –

+0

@ SkaryWombat質問が編集されたようです。私が質問を理解する方法は、特別な記号を除いてすべてを数えることでした。しかし、母音も同様に考慮する必要があることが分かりました。私は答えを編集します。 downvoteありがとう。 – Nurjan

+0

あなたが編集したときに教えてくださいと私はdownvoteを削除することができます。 (私はこれがあなたのせいではないことを知っていますが、それは間違った答えです)。 –

関連する問題