Могу ли я использовать: "TextEntered.ToUpperInvariant(). Содержит ("a")" для подсчета символов в строке?

Я пытаюсь посчитать гласные в определенной строке, введенной пользователем. Так что, если в предложении 6 А, то пользователь вводит через console.Readline(); консоль должна вернуться A=6, Окончательный вывод должен выглядеть примерно так:

A =?  
I =?  
E =?  
O =?  
U =?

Обратите внимание, что? Представляют количество гласных, обнаруженных в строке.

У меня есть несколько идей и шаг за шагом, напримерtextEntered.ToUpperInvariant().Contains("a")"Как упоминалось в названии. Будет ли это работать? Мне сказали, что это может просто возвращать true каждый раз, когда обнаруживается гласная. Если так, могу ли я установить true таким образом, чтобы это увеличивало счет?

Я также пытался найти решение на https://www.dotnetperls.com/count-characters но, похоже, это не дает желаемого результата.

Я думаю, что лучший способ будет использовать foreach цикл каким-то образом, чтобы цикл поиска символов!

Если нет, то какой самый эффективный способ это закодировать? Спасибо! (пожалуйста, помните, что я студент, который все еще изучает язык, пожалуйста, будьте добры!)

1 ответ

Решение

Вы можете использовать Count:

int countOfA = textEntered.Count(x => x == 'a');

РЕДАКТИРОВАТЬ:

int countOfA = textEntered.ToUpper().Count(x => x == 'A');
Другие вопросы по тегам