忽略大小写并在C#中进行比较

Mur*_*hy 14 .net c# string-comparison

如何在执行比较之前将字符串转换为大写,或者是否可以通过忽略大小写来比较字符串

 if (Convert.ToString(txt_SecAns.Text.Trim()).ToUpper() == 
     Convert.ToString(hidden_secans.Value).ToUpper())
Run Code Online (Sandbox Code Playgroud)

Dav*_*ras 30

用这个:

var result = String.Compare("AA", "aa", StringComparison.OrdinalIgnoreCase);
Run Code Online (Sandbox Code Playgroud)

String.Compare方法(String,String,Boolean)


Kol*_*lky 16

不区分大小写的字符串比较在C#中完成:

string.Equals("stringa", "stringb", StringComparison.CurrentCultureIgnoreCase)
Run Code Online (Sandbox Code Playgroud)

小心!这段代码依赖于文化; 还有其他几个选项,请参阅http://msdn.microsoft.com/en-us/library/system.stringcomparison.aspx.

  • 使用土耳其文化,此代码可以为`STRINGA`和`stringa`返回false.OP很有可能想要这样做,但重要的是要意识到文化影响不区分大小写的比较 (3认同)
  • 如果你希望它是文化不变的而不是使用这个`string.Equals("stringa","stringb",StringComparison.InvariantCultureIgnoreCase)` (2认同)

Dmi*_*try 5

好吧,你可以使用String.Equals(String,StringComparison)方法.只是通过它StringComparison.InvariantCultureIgnoreCaseStringComparison.CurrentCultureIgnoreCase取决于你的目标......