如何检查用户输入是否不区分大小写
本文关键字:是否 输入 不区 大小写 用户 何检查 检查 | 更新日期: 2023-09-27 18:05:03
我必须找到一个数字的平方/12345/-它完成了。我想让程序更复杂一点,我有这个:
using System;
class Program
{
static void Main()
{
Console.WriteLine("The square of the number 12345 is");
Console.WriteLine(Math.Sqrt(12345));
Console.WriteLine("Enter a number to calculate the square:");
int numVal = int.Parse(Console.ReadLine());
Console.WriteLine("The square of your number is" + " " + Math.Sqrt(numVal));
Console.WriteLine("Do you wish to enter another number? Yes / No");
string input = Console.ReadLine();
if (input == "Yes")
{
Console.WriteLine("Enter a number to calculate the square:");
int newNum = int.Parse(Console.ReadLine());
Console.WriteLine("The square of your number is" + " " + Math.Sqrt(newNum));
}
else
{
Console.WriteLine("Have a nice day!");
}
}
}
现在我有这个问题:当程序问我是否要输入另一个数字时,答案应该是大写字母/Yes, No/。有没有办法让它工作,即使我输入小写/yes, no/的答案?
根据您的输入,下面一行将做出反应。
if(string.Equals(input, "Yes", StringComparison.CurrentCultureIgnoreCase))
{
// Your stuffs
}
或
if(string.Equals(input, "Yes", StringComparison.OrdinalIgnoreCase))
{
// Your stuffs
}
注意: OrdinalIgnoreCase比较没有文化方面的字符代码。这适用于精确比较,比如登录名,但不适用于对包含不寻常字符的字符串进行排序,比如
更多信息:点击这里或这里
你可以试试:
...
string input = Console.ReadLine();
if (input.ToUpper() == "YES")
{
...
string.Equals(input, "Yes", StringComparison.OrdinalIgnoreCase)