Как правильно организовать проверку пользовательского ввода в консольной программе C#
Всем доброго времени суток. Скажите, как правильно организовать проверку пользовательского ввода в консоль по примеру имени. Предположим, что-бы нельзя было вводить символы по типу !"№;%%:?* и т.д. а также цифры, автоматически первая буква делалась с верхним регистром, имя не более 30 символов. В случае неправильного ввода указывалась причина отказа и предлогалась ввести имя заново.
Ответы (1 шт):
Автор решения: Tura
→ Ссылка
Не забудь подключить Linq в свой проект
static bool _flag;
static char[] symbols = { '#', '@', '№' }; //Запрещенные символы
static int size = 30; // Минимальная длина сообщения
static bool Check_correctly(string text)
{
if (text.Length < size){
Console.WriteLine("Размер сообщения слишком мал");
return true;
}
bool check = text.Where(symb => symbols.Contains(symb)).ToArray().Length > 0;
if (check){
Console.WriteLine("Неверно введено сообщение");
return true;
}
else return false;
}
static void Main(string[] args)
{
do
_flag = Check_correctly(Console.ReadLine());
while (_flag);
Console.WriteLine("Все хорошо, проходите дальше");
}