C# String Comparison (Ignore Case)
To compare two strings without considering case sensitivity, you can use methods that support case-insensitive comparisons.
Key Topics
1. Using Equals()
with Ignore Case
Example: Case-Insensitive Equality Check
string str1 = "hello";
string str2 = "HELLO";
bool areEqual = string.Equals(str1, str2, StringComparison.OrdinalIgnoreCase);
Console.WriteLine(areEqual); // Outputs: True
2. Using Compare()
with Ignore Case
Example: Case-Insensitive Comparison
string str1 = "Apple";
string str2 = "apple";
int result = string.Compare(str1, str2, true);
Console.WriteLine(result); // Outputs: 0 (strings are equal ignoring case)
3. Understanding StringComparison
Enum
Example: Using Different StringComparison Options
string str1 = "straße";
string str2 = "STRASSE";
bool areEqual = string.Equals(str1, str2, StringComparison.CurrentCultureIgnoreCase);
Console.WriteLine(areEqual); // Outputs: True in certain cultures
Note: The result may vary depending on the current culture settings.
Key Takeaways
- Use
StringComparison.OrdinalIgnoreCase
for case-insensitive comparisons. string.Equals()
andstring.Compare()
methods support case-insensitive options.- Be mindful of cultural differences when comparing strings.