遇到IgnoreCase问题

时间:2014-10-06 04:46:14

标签: c# multidimensional-array ignore-case

我很难将IgnoreCase放到这些代码

Console.WriteLine("Select a seat that you want to ocupy");
            string UserInput = Console.ReadLine();
            //replacing array values with X
            for (int row = Arr.GetLowerBound(0); row <= Arr.GetUpperBound(0); ++row)
            {
                for (int column = Arr.GetLowerBound(1); column <= Arr.GetUpperBound(1); ++column)                    
                    if (Arr[row, column].Contains(UserInput))                       
                        {
                            Arr[row, column] = " X ";
                        }                                                                  
            }

我用&#34; X&#34;替换2d数组值通过UserInput 这是我的阵列

string[,] Arr = new string[,]
{{"A1" , " A2" , " A3" , " A4" , " A5"},
{"B1" , " B2" , " B3" , " B4" , " B5"}};

2 个答案:

答案 0 :(得分:2)

String.Contains无法指定文化或案例比较。因此,您可能希望使用ToLowerInvariant

例如:

string UserInput = Console.ReadLine().ToLowerInvariant();

...

if (Arr[row, column].ToLowerInvariant().Contains(UserInput))

答案 1 :(得分:1)

你应该改用:

Arr[row, column].Contains(UserInput.ToUpper())

使用ToUpper()将始终比较输入的大写版本,无论其大小写如何。只要确保阵列符合你的提及即#34;即。全部大写&#34;