C#において文字列の比較を行う際、大文字と小文字を区別せずに比較することがあります。
本記事では、初心者向けにC#で文字列を大文字小文字を区別せずに比較する方法について解説します。
これにより、柔軟な文字列処理が可能になります。
文字列の大文字小文字を区別しないで比較する
C#において、文字列の比較を大文字小文字を区別せずに行うためには、Equals
メソッドを利用します。
string str1 = "Hello";
string str2 = "hello";
// 大文字小文字を区別せずに比較
bool result = str1.Equals(str2, StringComparison.OrdinalIgnoreCase);
この例では、StringComparison.OrdinalIgnoreCase
を指定することで、大文字小文字を区別せずに比較しています。
result
にはtrue
が代入されます。
大文字小文字を区別して比較する
string str1 = "Hello";
string str2 = "hello";
// 大文字小文字を区別して比較
bool result = str1.Equals(str2, StringComparison.Ordinal);
この例では、StringComparison.Ordinal
を指定することで、大文字小文字を区別して比較しています。
result
にはfalse
が代入されます。
StartsWithメソッドの利用
指定した文字列で始まるかどうかを大文字小文字を区別せずに判定する場合、
StartsWith
メソッドを利用します。
string str = "Hello, World";
// "hello"で始まるかどうかを大文字小文字を区別せずに判定
bool result = str.StartsWith("hello", StringComparison.OrdinalIgnoreCase);
この例では、result
にはtrue
が代入されます。
Containsメソッドの利用
文字列内に指定した文字列が含まれているかを大文字小文字を区別せずに判定する場合、
Contains
メソッドを利用します。
string str = "Hello, World";
// "world"が含まれているかを大文字小文字を区別せずに判定
bool result = str.Contains("world", StringComparison.OrdinalIgnoreCase);
この例では、result
にはtrue
が代入されます。
全角半角を区別しないで比較する方法
string str1 = "ABC";
string str2 = "abc";
// 全角半角を区別せずに比較
bool result = str1.Equals(str2, StringComparison.OrdinalIgnoreCase);
この例では、StringComparison.OrdinalIgnoreCase
を指定することで、
全角半角を区別せずに比較しています。result
にはtrue
が代入されます。
全角半角を区別して比較する方法
string str1 = "ABC";
string str2 = "abc";
// 全角半角を区別して比較
bool result = str1.Equals(str2, StringComparison.Ordinal);
この例では、StringComparison.Ordinal
を指定することで、全角半角を区別して比較しています。
result
にはfalse
が代入されます。
上記の例で示したように、StringComparison.OrdinalIgnoreCase
を用いることで
大文字小文字および全角半角を区別せずに比較することができます。
この手法は、文字列操作において柔軟性を確保するために役立ちます。
まとめ
この記事では、C#において文字列を大文字小文字を区別せずに比較する方法について解説しました。
Equals
メソッドを利用することで、柔軟な文字列比較が可能になります。
また、StringComparison
列挙型を使った別の使い方も紹介しました。
これらの方法を覚えておくと、実際の開発で大いに役立つことでしょう。
初心者の方もぜひ実際のコードで試してみてください。