StringComparer.CurrentCultureIgnoreCase Właściwość

Definicja

StringComparer Pobiera obiekt wykonujący porównania ciągów bez uwzględniania wielkości liter przy użyciu reguł porównywania wyrazów bieżącej kultury.

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

Wartość właściwości

StringComparer

Nowy obiekt do porównania ciągów.

Uwagi

Bieżąca kultura jest obiektem CultureInfo skojarzonym z bieżącym wątkiem; jest zwracany przez CultureInfo.CurrentCulture właściwość .

Zwrócony StringComparer CurrentCultureIgnoreCase przez właściwość może być używany, gdy ciągi są istotne lingwistyczne, ale ich wielkość liter nie jest. Jeśli na przykład ciągi są wyświetlane użytkownikowi, ale wielkość liter jest nieważna, porównywanie ciągów bez uwzględniania wielkości liter powinno być używane do zamawiania danych ciągu.

Uwaga

.NET Core działa tylko w systemach Linux i macOS: Zachowanie sortowania dla kultur C i Posix jest zawsze wrażliwe na wielkość liter, ponieważ te kultury nie używają oczekiwanej kolejności sortowania Unicode. Zalecamy używanie kultury innej niż C lub Posix do wykonywania wrażliwych na kulturę operacji sortowania bez uwzględniania wielkości liter.

Właściwość CurrentCultureIgnoreCase rzeczywiście zwraca wystąpienie anonimowej klasy pochodzącej StringComparer z klasy .

Każde wywołanie metody dostępu do CurrentCultureIgnoreCase właściwości get zwraca nowy StringComparer obiekt, jak pokazano w poniższym kodzie.

private void CompareCurrentCultureInsensitiveStringComparer()
{
   StringComparer stringComparer1, stringComparer2;
   stringComparer1 = StringComparer.CurrentCultureIgnoreCase;
   stringComparer2 = StringComparer.CurrentCultureIgnoreCase;
   // Displays false
   Console.WriteLine(StringComparer.ReferenceEquals(stringComparer1, 
                                                    stringComparer2));
}
let compareCurrentCultureInsensitiveStringComparer () =
    let stringComparer1 = StringComparer.CurrentCultureIgnoreCase
    let stringComparer2 = StringComparer.CurrentCultureIgnoreCase
    // Displays false
    printfn $"{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

Aby zwiększyć wydajność, można przechowywać StringComparer obiekt w zmiennej lokalnej zamiast pobierać wartość CurrentCultureIgnoreCase właściwości wiele razy.

Dotyczy

Zobacz też