Могу ли я использовать: "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');