C#字符串比较错误
C# string comparision error
我正在尝试检查值是否存在于字符串数组中。下面的代码有效,但是当我尝试下一个代码块时,它失败了。
bool exixts;
string toCheck= "jupiter";
string[] printer = {"jupiter", "neptune", "pangea", "mercury", "sonic"};
if(printer.Contains(toCheck))
{
exists = true;
}
如何检查 trim 和区分大小写?
我试过了
bool exixts;
string toCheck= "jupiter ";
string[] printer = {"jupiter", "neptune", "pangea", "mercury", "sonic"};
if(printer.Contains(toCheck.Trim(),StringComparison.InvariantCultureIgnoreCase)))
{
exists = true;
}
IEnumerable<string>.Contains(value, comparer)
需要比较 class 实例,而不是枚举值。
图书馆确实有一些现成的比较器可用:
//if(printer.Contains(toCheck.Trim(),StringComparison.InvariantCultureIgnoreCase)))
if (printer.Contains(toCheck.Trim(), StringComparer.OrdinalIgnoreCase))
或者你可以这样做,
bool exists = printer.Any(x=> x == toCheck.Trim());
希望有所帮助,
我正在尝试检查值是否存在于字符串数组中。下面的代码有效,但是当我尝试下一个代码块时,它失败了。
bool exixts;
string toCheck= "jupiter";
string[] printer = {"jupiter", "neptune", "pangea", "mercury", "sonic"};
if(printer.Contains(toCheck))
{
exists = true;
}
如何检查 trim 和区分大小写?
我试过了
bool exixts;
string toCheck= "jupiter ";
string[] printer = {"jupiter", "neptune", "pangea", "mercury", "sonic"};
if(printer.Contains(toCheck.Trim(),StringComparison.InvariantCultureIgnoreCase)))
{
exists = true;
}
IEnumerable<string>.Contains(value, comparer)
需要比较 class 实例,而不是枚举值。
图书馆确实有一些现成的比较器可用:
//if(printer.Contains(toCheck.Trim(),StringComparison.InvariantCultureIgnoreCase)))
if (printer.Contains(toCheck.Trim(), StringComparer.OrdinalIgnoreCase))
或者你可以这样做,
bool exists = printer.Any(x=> x == toCheck.Trim());
希望有所帮助,