StringComparer.CurrentCultureIgnoreCase プロパティ

定義

現在のカルチャの単語ベースの比較規則を使用して、大文字と小文字を区別せずに文字列を比較する StringComparer オブジェクトを取得します。Gets a StringComparer object that performs case-insensitive string comparisons using the word comparison rules of the current culture.

public:
 static property StringComparer ^ CurrentCultureIgnoreCase { StringComparer ^ get(); };
public static StringComparer CurrentCultureIgnoreCase { get; }
member this.CurrentCultureIgnoreCase : StringComparer
Public Shared ReadOnly Property CurrentCultureIgnoreCase As StringComparer

プロパティ値

StringComparer

文字列比較用の新しいオブジェクト。A new object for string comparison.

注釈

現在のカルチャは、 CultureInfo 現在のスレッドに関連付けられているオブジェクトです。プロパティによって返され CultureInfo.CurrentCulture ます。The current culture is the CultureInfo object associated with the current thread; it is returned by the CultureInfo.CurrentCulture property.

StringComparer CurrentCultureIgnoreCase 文字列が言語的な意味を持つが、大文字と小文字が区別されない場合は、プロパティによって返されるが使用されます。The StringComparer returned by the CurrentCultureIgnoreCase property can be used when strings are linguistically relevant but their case is not. たとえば、文字列がユーザーに表示されているにもかかわらず、大文字と小文字が区別されない場合は、カルチャに依存した文字列比較を使用して文字列データを並べ替える必要があります。For example, if strings are displayed to the user but case is unimportant, culture-sensitive, case-insensitive string comparison should be used to order the string data.

注意

Linux および macOS システムで実行されている .Net Core のみ: C および Posix カルチャの照合順序の動作では、常に大文字と小文字が区別されます。これらのカルチャでは、想定される Unicode 照合順序が使用されないためです。.NET Core running on Linux and macOS systems only: The collation behavior for the C and Posix cultures is always case-sensitive because these cultures do not use the expected Unicode collation order. カルチャに依存する、大文字と小文字を区別しない並べ替え操作を実行する場合は、C または Posix 以外のカルチャを使うことをお勧めします。We recommend that you use a culture other than C or Posix for performing culture-sensitive, case-insensitive sorting operations.

プロパティは、実際には CurrentCultureIgnoreCase 、クラスから派生した匿名クラスのインスタンスを返し StringComparer ます。The CurrentCultureIgnoreCase property actually returns an instance of an anonymous class derived from the StringComparer class.

CurrentCultureIgnoreCase次のコードに示すように、プロパティアクセサーを呼び出すたびに、 get 新しいオブジェクトが返さ StringComparer れます。Each call to the CurrentCultureIgnoreCase property get accessor returns a new StringComparer object, as the following code shows.

private void CompareCurrentCultureInsensitiveStringComparer()
{
   StringComparer stringComparer1, stringComparer2;
   stringComparer1 = StringComparer.CurrentCultureIgnoreCase;
   stringComparer2 = StringComparer.CurrentCultureIgnoreCase;
   // Displays false
   Console.WriteLine(StringComparer.ReferenceEquals(stringComparer1, 
                                                    stringComparer2));
}
Private Sub CompareCurrentCultureInsensitiveStringComparers()
   Dim stringComparer1, stringComparer2 As StringComparer
   stringComparer1 = StringComparer.CurrentCultureIgnoreCase
   stringComparer2 = StringComparer.CurrentCultureIgnoreCase
   ' Displays False
   Console.WriteLine(StringComparer.ReferenceEquals(stringComparer1, _
                                                    stringComparer2))
End Sub

パフォーマンスを向上させるには、 StringComparer プロパティの値を複数回取得するのではなく、ローカル変数にオブジェクトを格納し CurrentCultureIgnoreCase ます。To improve performance, you can store the StringComparer object in a local variable rather than retrieve the value of the CurrentCultureIgnoreCase property multiple times.

適用対象

こちらもご覧ください