Как преобразовать строку в верхний регистр перед выполнением сравнения или можно сравнить строку, игнорируя случай
if (Convert.ToString(txt_SecAns.Text.Trim()).ToUpper() ==
Convert.ToString(hidden_secans.Value).ToUpper())
Как преобразовать строку в верхний регистр перед выполнением сравнения или можно сравнить строку, игнорируя случай
if (Convert.ToString(txt_SecAns.Text.Trim()).ToUpper() ==
Convert.ToString(hidden_secans.Value).ToUpper())
используйте это:
var result = String.Compare("AA", "aa", StringComparison.OrdinalIgnoreCase);
Сравнение строк, нечувствительных к регистру, выполняется следующим образом в С#:
string.Equals("stringa", "stringb", StringComparison.CurrentCultureIgnoreCase)
Остерегайтесь! этот код зависит от культуры; есть еще несколько доступных опций, см. http://msdn.microsoft.com/en-us/library/system.stringcomparison.aspx.
Ну, вы можете использовать метод String.Equals(String,StringComparison)
. Просто передайте его StringComparison.InvariantCultureIgnoreCase
или StringComparison.CurrentCultureIgnoreCase
в зависимости от ваших целей...
От MSDN:
String.Compare Method (String, String, Boolean):
public static int Compare(
string strA,
string strB,
bool ignoreCase
)
поэтому в вашем случае:
if( String.Compare(txt_SecAns.Text.Trim(), hidden_secans.Value, true) == 0)
txt_SecAns.Trim().Compare(hidden_secans.Trim(), StringComparison.CurrentCultureIgnoreCase)
string.Compare(string1, string2, true) == 0 будет сравнивать, если две строки равны, игнорируя случай
Используйте StringComparison.CurrentCultureIgnoreCase
:
if (txt_SecAns.Text.Trim().Equals(hidden_secans.Value.ToString(), StringComparison.CurrentCultureIgnoreCase))
String.Compare(str1, str2, true);
Точно так же:
if (string.Compare(txt_SecAns.Text.Trim(), hidden_secans.Value.ToString(), true) == 0)
{
// DoSomething
}
Третий параметр true
сообщает string.Compare игнорировать регистр.
Я бы лично сравнил с надлежащей культурой, как и все здесь, но что-то не предлагалось:
public bool CompareStrings(string stringA, string StringB)
{
return stringA.ToLower() == stringB.ToLower();
}