CompareInfo Klasse

Definition

Implementiert eine Reihe von Methoden für kultursensitive Zeichenfolgenvergleiche.

public ref class CompareInfo
public ref class CompareInfo sealed : System::Runtime::Serialization::IDeserializationCallback
public ref class CompareInfo : System::Runtime::Serialization::IDeserializationCallback
public class CompareInfo
public sealed class CompareInfo : System.Runtime.Serialization.IDeserializationCallback
public class CompareInfo : System.Runtime.Serialization.IDeserializationCallback
[System.Serializable]
public class CompareInfo : System.Runtime.Serialization.IDeserializationCallback
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public class CompareInfo : System.Runtime.Serialization.IDeserializationCallback
type CompareInfo = class
type CompareInfo = class
    interface IDeserializationCallback
[<System.Serializable>]
type CompareInfo = class
    interface IDeserializationCallback
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type CompareInfo = class
    interface IDeserializationCallback
Public Class CompareInfo
Public NotInheritable Class CompareInfo
Implements IDeserializationCallback
Public Class CompareInfo
Implements IDeserializationCallback
Vererbung
CompareInfo
Attribute
Implementiert

Hinweise

Konventionen zum Vergleichen und Sortieren von Daten variieren von Kultur zu Kultur. Die Sortierreihenfolge kann beispielsweise auf Phonetik oder auf der visuellen Darstellung von Zeichen basieren. In ostasiatischen Sprachen werden Zeichen anhand der Anzahl der Striche und der Radikale der Ideogramme sortiert. Die Sortierung hängt außerdem von der Reihenfolge ab, die das Alphabet der jeweiligen Sprache bzw. Kultur aufweist. Die dänische Sprache weist beispielsweise ein "Æ"-Zeichen auf, das nach "Z" im Alphabet sortiert wird. Darüber hinaus kann bei Vergleichen zwischen Groß- und Kleinschreibung unterschieden werden, und auch die Regeln für Groß-/Kleinschreibung können sich je nach Kultur unterscheiden. Die CompareInfo Klasse ist für die Aufrechterhaltung dieser kultursensiblen Zeichenfolgenvergleichsdaten und für die Durchführung von Kultursensiblen Zeichenfolgenvorgängen verantwortlich.

In der Regel müssen Sie ein CompareInfo Objekt nicht direkt instanziieren, da ein Objekt implizit von allen nicht ordinalen Zeichenfolgenvergleichsvorgängen verwendet wird, einschließlich Aufrufe der String.Compare Methode. Wenn Sie jedoch ein CompareInfo Objekt abrufen möchten, können Sie es auf eine der folgenden Arten ausführen:

  • Durch Abrufen des Werts der CultureInfo.CompareInfo Eigenschaft für eine bestimmte Kultur.

  • Durch Aufrufen der statischen Methode GetCompareInfo mit einem Kulturnamen. Dies ermöglicht den spät gebundenen Zugriff auf ein CompareInfo Objekt.

Ignorierte Suchwerte

Zeichensätze enthalten ignorierbare Zeichen, bei denen es sich um Zeichen handelt, die beim Durchführen eines sprachlichen oder kultursensitiven Vergleichs nicht berücksichtigt werden. Vergleichsmethoden wie IndexOf und LastIndexOf berücksichtigen solche Zeichen nicht, wenn sie einen kultursensitiven Vergleich durchführen. Zu den ignorablen Zeichen gehören:

  • String.Empty. Kultursensitive Vergleichsmethoden finden immer eine leere Zeichenfolge am Anfang (Index Null) der durchsuchten Zeichenfolge.

  • Ein Zeichen oder eine Zeichenfolge, die aus Zeichen mit Codepunkten besteht, die im Vorgang aufgrund von Vergleichsoptionen nicht berücksichtigt werden. Insbesondere die Optionen CompareOptions.IgnoreNonSpace und CompareOptions.IgnoreSymbols führen zu Suchvorgängen, bei denen Symbole und kombinierte Zeichen ohne Zwischenraum ignoriert werden.

  • Eine Zeichenfolge mit Codepunkten, die keine sprachliche Bedeutung haben. Beispielsweise wird ein weicher Bindestrich (U+00AD) immer bei einem kultursensiblen Zeichenfolgenvergleich ignoriert.

Sicherheitsüberlegungen

Wenn eine Sicherheitsentscheidung von einem Zeichenfolgenvergleich oder einer Falländerung abhängt, sollten Sie die InvariantCulture Eigenschaft verwenden, um sicherzustellen, dass das Verhalten konsistent ist, unabhängig von den Kultureinstellungen des Betriebssystems.

Note

Wenn möglich, sollten Sie Zeichenfolgenvergleichsmethoden verwenden, die über einen Parameter vom Typ CompareOptions verfügen, um die Art des erwarteten Vergleichs anzugeben. Verwenden Sie in der Regel linguistische Optionen (unter Verwendung der aktuellen Kultur), um Zeichenfolgen zu vergleichen, die auf der Benutzeroberfläche angezeigt werden, und geben Ordinal Oder OrdinalIgnoreCase für Sicherheitsvergleiche an.

Example

  The following example shows how the <xref:System.Globalization.CompareInfo> object associated with a <xref:System.Globalization.CultureInfo> object affects string comparison.

  :::code language="csharp" source="~/snippets/csharp/System.Globalization/CompareInfo/Overview/CompareInfo.cs" id="Snippet1":::
  :::code language="vb" source="~/snippets/visualbasic/System.Globalization/CompareInfo/Overview/CompareInfo.vb" id="Snippet1":::

Eigenschaften

Name Beschreibung
LCID

Ruft den ordnungsgemäß gebildeten Kulturbezeichner für die aktuelle .CompareInfo

Name

Ruft den Namen der Kultur ab, die für Sortiervorgänge nach diesem CompareInfo Objekt verwendet wird.

Version

Ruft Informationen zur Unicode-Version ab, die zum Vergleichen und Sortieren von Zeichenfolgen verwendet wird.

Methoden

Name Beschreibung
Compare(ReadOnlySpan<Char>, ReadOnlySpan<Char>, CompareOptions)

Vergleicht zwei schreibgeschützte Zeichenspannen.

Compare(String, Int32, Int32, String, Int32, Int32, CompareOptions)

Vergleicht einen Abschnitt einer Zeichenfolge mit einem Abschnitt einer anderen Zeichenfolge mithilfe des angegebenen CompareOptions Werts.

Compare(String, Int32, Int32, String, Int32, Int32)

Vergleicht einen Abschnitt einer Zeichenfolge mit einem Abschnitt einer anderen Zeichenfolge.

Compare(String, Int32, String, Int32, CompareOptions)

Vergleicht den Endabschnitt einer Zeichenfolge mit dem Endabschnitt einer anderen Zeichenfolge mithilfe des angegebenen CompareOptions Werts.

Compare(String, Int32, String, Int32)

Vergleicht den Endabschnitt einer Zeichenfolge mit dem Endabschnitt einer anderen Zeichenfolge.

Compare(String, String, CompareOptions)

Vergleicht zwei Zeichenfolgen mithilfe des angegebenen CompareOptions Werts.

Compare(String, String)

Vergleicht zwei Zeichenfolgen.

Equals(Object)

Bestimmt, ob das angegebene Objekt dem aktuellen CompareInfo Objekt entspricht.

GetCompareInfo(Int32, Assembly)

Initialisiert ein neues CompareInfo Objekt, das der angegebenen Kultur zugeordnet ist, und verwendet Zeichenfolgenvergleichsmethoden in der angegebenen .Assembly

GetCompareInfo(Int32)

Initialisiert ein neues CompareInfo Objekt, das der Kultur mit dem angegebenen Bezeichner zugeordnet ist.

GetCompareInfo(String, Assembly)

Initialisiert ein neues CompareInfo Objekt, das der angegebenen Kultur zugeordnet ist, und verwendet Zeichenfolgenvergleichsmethoden in der angegebenen .Assembly

GetCompareInfo(String)

Initialisiert ein neues CompareInfo Objekt, das der Kultur mit dem angegebenen Namen zugeordnet ist.

GetHashCode()

Dient als Hashfunktion für den aktuellen CompareInfo für Hashingalgorithmen und Datenstrukturen, z. B. eine Hashtabelle.

GetHashCode(ReadOnlySpan<Char>, CompareOptions)

Ruft den Hashcode für eine Zeichenspanne basierend auf angegebenen Vergleichsoptionen ab.

GetHashCode(String, CompareOptions)

Ruft den Hashcode für eine Zeichenfolge basierend auf angegebenen Vergleichsoptionen ab.

GetSortKey(ReadOnlySpan<Char>, Span<Byte>, CompareOptions)

Berechnet einen Sortierschlüssel für die angegebene Eingabe.

GetSortKey(String, CompareOptions)

Ruft ein SortKey Objekt für die angegebene Zeichenfolge mit dem angegebenen CompareOptions Wert ab.

GetSortKey(String)

Ruft den Sortierschlüssel für die angegebene Zeichenfolge ab.

GetSortKeyLength(ReadOnlySpan<Char>, CompareOptions)

Ruft die Gesamtanzahl der Sortierschlüsselbytes ab, die aus der angegebenen Eingabe erzeugt werden würden.

GetType()

Ruft die Type der aktuellen Instanz ab.

(Geerbt von Object)
IndexOf(ReadOnlySpan<Char>, ReadOnlySpan<Char>, CompareOptions, Int32)

Sucht nach dem ersten Vorkommen einer Teilzeichenfolge innerhalb einer Quellzeichenfolge.

IndexOf(ReadOnlySpan<Char>, ReadOnlySpan<Char>, CompareOptions)

Sucht nach dem ersten Vorkommen einer Teilzeichenfolge innerhalb der angegebenen schreibgeschützten Zeichenspanne.

IndexOf(ReadOnlySpan<Char>, Rune, CompareOptions)

Sucht nach dem ersten Vorkommen eines in Rune der angegebenen schreibgeschützten Zeichenspanne.

IndexOf(String, Char, CompareOptions)

Sucht nach dem angegebenen Zeichen und gibt den nullbasierten Index des ersten Vorkommens innerhalb der gesamten Quellzeichenfolge mithilfe des angegebenen CompareOptions Werts zurück.

IndexOf(String, Char, Int32, CompareOptions)

Sucht nach dem angegebenen Zeichen und gibt den nullbasierten Index des ersten Vorkommens innerhalb des Abschnitts der Quellzeichenfolge zurück, der vom angegebenen Index bis zum Ende der Zeichenfolge mit dem angegebenen CompareOptions Wert reicht.

IndexOf(String, Char, Int32, Int32, CompareOptions)

Sucht nach dem angegebenen Zeichen und gibt den nullbasierten Index des ersten Vorkommens innerhalb des Abschnitts der Quellzeichenfolge zurück, die am angegebenen Index beginnt und die angegebene Anzahl von Elementen mit dem angegebenen CompareOptions Wert enthält.

IndexOf(String, Char, Int32, Int32)

Sucht nach dem angegebenen Zeichen und gibt den nullbasierten Index des ersten Vorkommens innerhalb des Abschnitts der Quellzeichenfolge zurück, die am angegebenen Index beginnt und die angegebene Anzahl von Elementen enthält.

IndexOf(String, Char, Int32)

Sucht nach dem angegebenen Zeichen und gibt den nullbasierten Index des ersten Vorkommens innerhalb des Abschnitts der Quellzeichenfolge zurück, der vom angegebenen Index bis zum Ende der Zeichenfolge reicht.

IndexOf(String, Char)

Sucht nach dem angegebenen Zeichen und gibt den nullbasierten Index des ersten Vorkommens innerhalb der gesamten Quellzeichenfolge zurück.

IndexOf(String, String, CompareOptions)

Sucht nach der angegebenen Teilzeichenfolge und gibt den nullbasierten Index des ersten Vorkommens innerhalb der gesamten Quellzeichenfolge mithilfe des angegebenen CompareOptions Werts zurück.

IndexOf(String, String, Int32, CompareOptions)

Sucht nach der angegebenen Teilzeichenfolge und gibt den nullbasierten Index des ersten Vorkommens innerhalb des Abschnitts der Quellzeichenfolge zurück, der sich vom angegebenen Index bis zum Ende der Zeichenfolge mit dem angegebenen CompareOptions Wert erstreckt.

IndexOf(String, String, Int32, Int32, CompareOptions)

Sucht nach der angegebenen Teilzeichenfolge und gibt den nullbasierten Index des ersten Vorkommens innerhalb des Abschnitts der Quellzeichenfolge zurück, der am angegebenen Index beginnt und die angegebene Anzahl von Elementen mit dem angegebenen CompareOptions Wert enthält.

IndexOf(String, String, Int32, Int32)

Sucht nach der angegebenen Teilzeichenfolge und gibt den nullbasierten Index des ersten Vorkommens innerhalb des Abschnitts der Quellzeichenfolge zurück, die am angegebenen Index beginnt und die angegebene Anzahl von Elementen enthält.

IndexOf(String, String, Int32)

Sucht nach der angegebenen Teilzeichenfolge und gibt den nullbasierten Index des ersten Vorkommens innerhalb des Abschnitts der Quellzeichenfolge zurück, der sich vom angegebenen Index bis zum Ende der Zeichenfolge erstreckt.

IndexOf(String, String)

Sucht nach der angegebenen Teilzeichenfolge und gibt den nullbasierten Index des ersten Vorkommens innerhalb der gesamten Quellzeichenfolge zurück.

IsPrefix(ReadOnlySpan<Char>, ReadOnlySpan<Char>, CompareOptions, Int32)

Bestimmt, ob eine Zeichenfolge mit einem bestimmten Präfix beginnt.

IsPrefix(ReadOnlySpan<Char>, ReadOnlySpan<Char>, CompareOptions)

Bestimmt, ob ein schreibgeschützter Bereich von Zeichen mit einem bestimmten Präfix beginnt.

IsPrefix(String, String, CompareOptions)

Bestimmt, ob die angegebene Quellzeichenfolge mit dem angegebenen Präfix mit dem angegebenen CompareOptions Wert beginnt.

IsPrefix(String, String)

Bestimmt, ob die angegebene Quellzeichenfolge mit dem angegebenen Präfix beginnt.

IsSortable(Char)

Gibt an, ob ein angegebenes Unicode-Zeichen sortierbar ist.

IsSortable(ReadOnlySpan<Char>)

Gibt an, ob ein angegebener unicode-schreibgeschützter Bereich von Zeichen sortierbar ist.

IsSortable(Rune)

Gibt an, ob eine angegebene Rune Sortierung zulässig ist.

IsSortable(String)

Gibt an, ob eine angegebene Unicode-Zeichenfolge sortiert werden kann.

IsSuffix(ReadOnlySpan<Char>, ReadOnlySpan<Char>, CompareOptions, Int32)

Bestimmt, ob eine Zeichenfolge mit einem bestimmten Suffix endet.

IsSuffix(ReadOnlySpan<Char>, ReadOnlySpan<Char>, CompareOptions)

Bestimmt, ob ein schreibgeschützter Bereich von Zeichen mit einem bestimmten Suffix endet.

IsSuffix(String, String, CompareOptions)

Bestimmt, ob die angegebene Quellzeichenfolge mit dem angegebenen Suffix mit dem angegebenen CompareOptions Wert endet.

IsSuffix(String, String)

Bestimmt, ob die angegebene Quellzeichenfolge mit dem angegebenen Suffix endet.

LastIndexOf(ReadOnlySpan<Char>, ReadOnlySpan<Char>, CompareOptions, Int32)

Sucht nach dem letzten Vorkommen einer Teilzeichenfolge innerhalb einer Quellzeichenfolge.

LastIndexOf(ReadOnlySpan<Char>, ReadOnlySpan<Char>, CompareOptions)

Sucht nach dem letzten Vorkommen einer Teilzeichenfolge innerhalb der angegebenen schreibgeschützten Zeichenspanne.

LastIndexOf(ReadOnlySpan<Char>, Rune, CompareOptions)

Sucht nach dem letzten Vorkommen eines innerhalb Rune des angegebenen schreibgeschützten Zeichenbereichs.

LastIndexOf(String, Char, CompareOptions)

Sucht nach dem angegebenen Zeichen und gibt den nullbasierten Index des letzten Vorkommens innerhalb der gesamten Quellzeichenfolge mithilfe des angegebenen CompareOptions Werts zurück.

LastIndexOf(String, Char, Int32, CompareOptions)

Sucht nach dem angegebenen Zeichen und gibt den nullbasierten Index des letzten Vorkommens innerhalb des Abschnitts der Quellzeichenfolge zurück, der sich vom Anfang der Zeichenfolge bis zum angegebenen Index mit dem angegebenen CompareOptions Wert erstreckt.

LastIndexOf(String, Char, Int32, Int32, CompareOptions)

Sucht nach dem angegebenen Zeichen und gibt den nullbasierten Index des letzten Vorkommens innerhalb des Abschnitts der Quellzeichenfolge zurück, der die angegebene Anzahl von Elementen enthält und mit dem angegebenen CompareOptions Wert am angegebenen Index endet.

LastIndexOf(String, Char, Int32, Int32)

Sucht nach dem angegebenen Zeichen und gibt den nullbasierten Index des letzten Vorkommens innerhalb des Abschnitts der Quellzeichenfolge zurück, der die angegebene Anzahl von Elementen enthält und am angegebenen Index endet.

LastIndexOf(String, Char, Int32)

Sucht nach dem angegebenen Zeichen und gibt den nullbasierten Index des letzten Vorkommens innerhalb des Abschnitts der Quellzeichenfolge zurück, der sich vom Anfang der Zeichenfolge bis zum angegebenen Index erstreckt.

LastIndexOf(String, Char)

Sucht nach dem angegebenen Zeichen und gibt den nullbasierten Index des letzten Vorkommens innerhalb der gesamten Quellzeichenfolge zurück.

LastIndexOf(String, String, CompareOptions)

Sucht nach der angegebenen Teilzeichenfolge und gibt den nullbasierten Index des letzten Vorkommens innerhalb der gesamten Quellzeichenfolge mithilfe des angegebenen CompareOptions Werts zurück.

LastIndexOf(String, String, Int32, CompareOptions)

Sucht nach der angegebenen Teilzeichenfolge und gibt den nullbasierten Index des letzten Vorkommens innerhalb des Abschnitts der Quellzeichenfolge zurück, der sich vom Anfang der Zeichenfolge bis zum angegebenen Index mithilfe des angegebenen CompareOptions Werts erstreckt.

LastIndexOf(String, String, Int32, Int32, CompareOptions)

Sucht nach der angegebenen Teilzeichenfolge und gibt den nullbasierten Index des letzten Vorkommens innerhalb des Abschnitts der Quellzeichenfolge zurück, der die angegebene Anzahl von Elementen enthält und mit dem angegebenen CompareOptions Wert am angegebenen Index endet.

LastIndexOf(String, String, Int32, Int32)

Sucht nach der angegebenen Teilzeichenfolge und gibt den nullbasierten Index des letzten Vorkommens innerhalb des Abschnitts der Quellzeichenfolge zurück, die die angegebene Anzahl von Elementen enthält und am angegebenen Index endet.

LastIndexOf(String, String, Int32)

Sucht nach der angegebenen Teilzeichenfolge und gibt den nullbasierten Index des letzten Vorkommens innerhalb des Abschnitts der Quellzeichenfolge zurück, der sich vom Anfang der Zeichenfolge bis zum angegebenen Index erstreckt.

LastIndexOf(String, String)

Sucht nach der angegebenen Teilzeichenfolge und gibt den nullbasierten Index des letzten Vorkommens innerhalb der gesamten Quellzeichenfolge zurück.

MemberwiseClone()

Erstellt eine flache Kopie der aktuellen Object.

(Geerbt von Object)
ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle CompareInfo Objekt darstellt.

Explizite Schnittstellenimplementierungen

Name Beschreibung
IDeserializationCallback.OnDeserialization(Object)

Wird ausgeführt, wenn das gesamte Objektdiagramm deserialisiert wurde.

Erweiterungsmethoden

Name Beschreibung
GetStringComparer(CompareInfo, CompareOptions)

Gibt ein StringComparer Objekt zurück, das auf den Regeln für den Kultursensiblen Zeichenfolgenvergleich eines angegebenen CompareInfo Objekts basiert.

Gilt für:

Weitere Informationen