【问题标题】:C# Validate the first two digits for a four digit console input [duplicate]C#验证四位控制台输入的前两位数字[重复]
【发布时间】:2016-12-11 09:52:56
【问题描述】:

我正在尝试验证来自控制台输入的输入

要求控制台输入的前2位为20

我认为

input[0] = '2' 将验证第一个数字是 2

验证 20 的语法是什么?

谢谢。

【问题讨论】:

  • input.Length >=2 && input[0] == '2' && input[1] == '0'
  • 您需要先尝试自己,如果您不能这样做,那么请谷歌搜索简单的问题......
  • 感谢您的回复。有什么方法可以将两个输入结合起来,比如 input[0,1] == '20' ?

标签: c# validation


【解决方案1】:

有很多方法可以做到这一点,但我会选择string 方法StartsWith

var input = Console.ReadLine();

if(input.StartsWith("20"))
{

}

如果input 少于2 个字符,StartsWith 将不会抛出,并且Console.ReadLine(假设这是您正在使用的)在所有常见用户场景中不会返回 null。

【讨论】:

    【解决方案2】:
    if(input.StartWith("20") && input.Length >= 2)
    {
       Console.WriteLine("Valid Input");
    }
    else
    {
       Console.WriteLine("Not Valid");
    }
    

    【讨论】:

    • 请添加一些说明,说明此代码为何回答所提出的问题。
    【解决方案3】:

    你可以这样做

    private static void Main(string[] args)
            {
    
            string s = Console.ReadLine();
    
            if (s.Length >= 2 && s.Substring(0, 2) == "20")
            {
                Console.WriteLine("Yes");
            }
            else
            {
                Console.WriteLine("No");
            }
    
            Console.ReadKey();
        }
    

    【讨论】:

    • 如果输入的长度少于两个字符,这将引发异常。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-05-31
    • 1970-01-01
    • 2014-01-05
    • 2021-10-14
    • 2014-05-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多