c# - How to compare two strings by ignoring case

String Compare() Method - case insensitive/ ignore case
we can compare two specified string objects using String.Compare method. String.Compare() method returns an integer that indicates their relative position in the sort order. this method is overloaded.

String.Compare(String, String, Boolean) method overload compare two specified string objects by ignoring or honoring their case. so we can use this overloaded method to compare two string objects by ignoring case (case insensitive string comparison).

this overloaded method require three parameters. First two parameters are two string objects those we need to compare. and third parameter is a Boolean value. we must set the Boolean parameter to True when we need to ignore case during comparison. or we must set the Boolean parameter to False to honor case during string comparison.

if the method returned integer is less than zero, then the first string (strA) is less than the second string (strB). if it return zero, then two specified strings are equals. and if the return value is greater than zero, then the first string is greater than the second string.

the following asp.net c# example code demonstrate us how can we compare two strings by ignoring their case.
CompareIgnoreCase.aspx

<%@ Page Language="C#" %>


<!DOCTYPE html>

<script runat="server">
    protected void page_Load(object sender, System.EventArgs e) {
        if(!this.IsPostBack)
        {
            TextBox1.Text = "Jones";
            TextBox2.Text = "jones";
        }
    }
    protected void Button1_Click(object sender, System.EventArgs e) {
        string testString1 = TextBox1.Text.ToString();
        string testString2 = TextBox2.Text.ToString();
        int result = string.Compare(testString1, testString2,true);
        Label1.Text = "";

        if(result == 0)
        {
            Label1.Text += "Two strings are equal";
        }
        else if(result == 1)
        {
            Label1.Text += "Test String1 is greater than Test String2";
        }
        else if (result == -1)
        {
            Label1.Text += "Test String1 is less than Test String2";
        }
        
    }
</script>

<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
    <title>How to compare two string in asp.net (case insensitive/ ignore case)</title>
</head> 
<body>
    <form id="form1" runat="server">
    <div>
        <h2 style="color:Navy">asp.net string example: Compare() [Ignore case]</h2>
        <asp:Label 
             ID="Label1" 
             runat="server" 
             Font-Size="Large"
             ForeColor="HotPink"
             Font-Bold="true"
             Font-Italic="true"
             >
        </asp:Label>
        <br /><br />
        <asp:Label 
             ID="Label2" 
             runat="server" 
             Text="Test String1"
             ForeColor="DodgerBlue"
             >
        </asp:Label>
        <asp:TextBox 
             ID="TextBox1" 
             runat="server" 
             BackColor="DodgerBlue" 
             ForeColor="Snow"
             >
        </asp:TextBox>
        <br />
        <asp:Label 
             ID="Label3" 
             runat="server" 
             Text="Test String2"
             ForeColor="DodgerBlue"
             >
        </asp:Label>
        <asp:TextBox 
             ID="TextBox2" 
             runat="server" 
             BackColor="DodgerBlue" 
             ForeColor="Snow"
             >
        </asp:TextBox>
        <br /><br />
        <asp:Button 

             ID="Button1" 
             runat="server" 
             OnClick="Button1_Click"
             Font-Bold="true"
             Text="Compare"
             ForeColor="DodgerBlue"
             />   
    </div>
    </form>
</body>
</html>
More c# examples