我制作了以下代码:
string fname;
Console.WriteLine("Input employee first name:");
fname = Console.ReadLine();
这个想法是插入一个while循环(带有" if"在其中)以限制从控制台输入到字母。但是,使用Tryparse并不起作用,因为它会将字符串解析为int。我很高兴收到关于如何通过" Tryparsing"解决这个问题的建议。字符串到字符串。
答案 0 :(得分:1)
试试这个:
Console.Write("Input employee first name: ");
var s = new StringBuilder();
do
{
var key = Console.ReadKey(true);
if (key.KeyChar == '\r')
break;
if (char.IsLetter(key.KeyChar))
{
Console.Write(key.KeyChar);
s.Append(key.KeyChar);
}
} while (true);
Console.WriteLine();
Console.WriteLine( "You typed " + s.ToString());
答案 1 :(得分:0)
正如您在问题评论中提到的那样,RegEx可能是评估输入的最简单方法
if (Regex.IsMatch("yourtexthere", "^[a-zA-Z]{1,25}$").Success) {
// it matches
}
这应该会让你知道如何完成它