CompareInfo Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Implementuje sadu metod pro porovnání řetězců citlivých na jazykovou verzi.
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
- Dědičnost
-
CompareInfo
- Atributy
- Implementuje
Poznámky
Konvence pro porovnávání a řazení dat se liší od jazykové verze po jazykovou verzi. Pořadí řazení může být například založeno na fonetice nebo na vizuální reprezentaci znaků. Ve východoasijských jazycích jsou znaky řazeny podle tahů a radikálu ideogramů. Řazení závisí také na pořadí, které jazyky a jazykové verze používají pro abecedu. Dánský jazyk má například znak „Æ“, který se abecedně řadí za znak „Z“. Kromě toho mohou být porovnání citlivá nebo necitlivá na velikost písmen a pravidla pro velikost písmen se mohou také lišit podle kultury. Třída CompareInfo zodpovídá za udržování dat porovnání řetězců citlivých na jazykovou verzi a za provádění operací řetězců citlivých na jazykovou verzi.
Obvykle nemusíte vytvořit instanci CompareInfo objektu přímo, protože je implicitně používán ve všech neordinálních operacích porovnávání řetězců, včetně volání metody String.Compare. Pokud ale chcete objekt CompareInfo načíst, můžete to udělat jedním z těchto způsobů:
Načtením hodnoty CultureInfo.CompareInfo vlastnosti pro konkrétní jazykovou verzi.
Voláním statické GetCompareInfo metody s názvem kultury. To umožňuje pozdní přístup k objektu CompareInfo .
Ignorované hodnoty hledání
Znakové sady obsahují ignorovatelné znaky, což jsou znaky, které se při provádění jazykového nebo kulturně citlivého porovnání nerozlišují. Metody porovnání, jako IndexOf a LastIndexOf, neberou v úvahu takové znaky při provádění porovnání citlivého na kulturu. Ignorovatelné znaky zahrnují:
String.Empty. Metody porovnání citlivé na kulturní kontext vždy najdou prázdný řetězec na začátku (index 0) prohledávaného řetězce.
Znak nebo řetězec skládající se z znaků s body kódů, které nejsou zohledněny při operaci kvůli možnostem porovnávání. Zejména možnosti CompareOptions.IgnoreNonSpace a CompareOptions.IgnoreSymbols vytvářejí vyhledávání, ve kterých jsou symboly a neoddělující kombinující znaky ignorovány.
Řetězec s body kódu, které nemají žádný lingvistický význam. Například v porovnání řetězců citlivých na kulturu se vždy ignoruje měkký spojovník (U+00AD).
Bezpečnostní aspekty
Pokud rozhodnutí o zabezpečení závisí na porovnání řetězců nebo změně velikosti písmen, měli byste použít vlastnost InvariantCulture k zajištění konzistentního chování bez ohledu na nastavení jazykové verze operačního systému.
Note
Pokud je to možné, měli byste použít metody porovnání řetězců, které mají parametr typu CompareOptions k určení druhu očekávaného porovnání. Obecně platí, že pro porovnávání řetězců zobrazených v uživatelském rozhraní použijte jazykové volby (s využitím aktuální kultury) a zadejte Ordinal nebo OrdinalIgnoreCase pro bezpečnostní porovnání.
Příklad
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":::
Vlastnosti
| Name | Description |
|---|---|
| LCID |
Získá správně formátovaný identifikátor jazykové verze pro aktuální CompareInfo. |
| Name |
Získá název jazykové verze používané pro řazení operací podle tohoto CompareInfo objektu. |
| Version |
Získá informace o verzi Unicode používané pro porovnávání a řazení řetězců. |
Metody
| Name | Description |
|---|---|
| Compare(ReadOnlySpan<Char>, ReadOnlySpan<Char>, CompareOptions) |
Porovná dvě rozsahy znaků jen pro čtení. |
| Compare(String, Int32, Int32, String, Int32, Int32, CompareOptions) |
Porovná oddíl jednoho řetězce s oddílem jiného řetězce pomocí zadané CompareOptions hodnoty. |
| Compare(String, Int32, Int32, String, Int32, Int32) |
Porovná část jednoho řetězce s oddílem jiného řetězce. |
| Compare(String, Int32, String, Int32, CompareOptions) |
Porovná koncový oddíl řetězce s koncovou částí jiného řetězce pomocí zadané CompareOptions hodnoty. |
| Compare(String, Int32, String, Int32) |
Porovná koncovou část řetězce s koncovou částí jiného řetězce. |
| Compare(String, String, CompareOptions) |
Porovná dva řetězce pomocí zadané CompareOptions hodnoty. |
| Compare(String, String) |
Porovná dva řetězce. |
| Equals(Object) |
Určuje, zda je zadaný objekt roven aktuálnímu CompareInfo objektu. |
| GetCompareInfo(Int32, Assembly) |
Inicializuje nový CompareInfo objekt, který je přidružen k zadané jazykové verzi a používá metody porovnání řetězců v zadané Assembly. |
| GetCompareInfo(Int32) |
Inicializuje nový CompareInfo objekt, který je přidružen k jazykové verzi se zadaným identifikátorem. |
| GetCompareInfo(String, Assembly) |
Inicializuje nový CompareInfo objekt, který je přidružen k zadané jazykové verzi a používá metody porovnání řetězců v zadané Assembly. |
| GetCompareInfo(String) |
Inicializuje nový CompareInfo objekt, který je přidružen k jazykové verzi se zadaným názvem. |
| GetHashCode() |
Slouží jako hashovací funkce pro aktuální CompareInfo algoritmus hash a datové struktury, jako je například hashovací tabulka. |
| GetHashCode(ReadOnlySpan<Char>, CompareOptions) |
Získá hash kód pro rozsah znaků na základě zadaných možností porovnání. |
| GetHashCode(String, CompareOptions) |
Získá hash kód pro řetězec na základě zadaných možností porovnání. |
| GetSortKey(ReadOnlySpan<Char>, Span<Byte>, CompareOptions) |
Vypočítá klíč řazení pro zadaný vstup. |
| GetSortKey(String, CompareOptions) |
SortKey Získá objekt pro zadaný řetězec pomocí zadané CompareOptions hodnoty. |
| GetSortKey(String) |
Získá klíč řazení pro zadaný řetězec. |
| GetSortKeyLength(ReadOnlySpan<Char>, CompareOptions) |
Získá celkový počet bajtů klíče řazení, které by byly vytvořeny ze zadaného vstupu. |
| GetType() |
Získá Type aktuální instance. (Zděděno od Object) |
| IndexOf(ReadOnlySpan<Char>, ReadOnlySpan<Char>, CompareOptions, Int32) |
Vyhledá první výskyt podřetězce ve zdrojovém řetězci. |
| IndexOf(ReadOnlySpan<Char>, ReadOnlySpan<Char>, CompareOptions) |
Vyhledá první výskyt podřetětědce v zadaném rozsahu znaků jen pro čtení. |
| IndexOf(ReadOnlySpan<Char>, Rune, CompareOptions) |
Vyhledá první výskyt zadaného rozsahu Rune znaků jen pro čtení. |
| IndexOf(String, Char, CompareOptions) |
Vyhledá zadaný znak a vrátí index založený na nule prvního výskytu v celém zdrojovém řetězci pomocí zadané CompareOptions hodnoty. |
| IndexOf(String, Char, Int32, CompareOptions) |
Vyhledá zadaný znak a vrátí index založený na nule prvního výskytu v oddílu zdrojového řetězce, který se rozšiřuje ze zadaného indexu na konec řetězce pomocí zadané CompareOptions hodnoty. |
| IndexOf(String, Char, Int32, Int32, CompareOptions) |
Vyhledá zadaný znak a vrátí index založený na nule prvního výskytu v oddílu zdrojového řetězce, který začíná na zadaném indexu a obsahuje zadaný počet prvků používající zadanou CompareOptions hodnotu. |
| IndexOf(String, Char, Int32, Int32) |
Vyhledá zadaný znak a vrátí index založený na nule prvního výskytu v oddílu zdrojového řetězce, který začíná na zadaném indexu a obsahuje zadaný počet prvků. |
| IndexOf(String, Char, Int32) |
Vyhledá zadaný znak a vrátí index založený na nule prvního výskytu v oddílu zdrojového řetězce, který se rozšiřuje ze zadaného indexu na konec řetězce. |
| IndexOf(String, Char) |
Vyhledá zadaný znak a vrátí index založený na nule prvního výskytu v celém zdrojovém řetězci. |
| IndexOf(String, String, CompareOptions) |
Vyhledá zadaný podřetězec a vrátí index založený na nule prvního výskytu v celém zdrojovém řetězci pomocí zadané CompareOptions hodnoty. |
| IndexOf(String, String, Int32, CompareOptions) |
Vyhledá zadaný podřetězec a vrátí index založený na nule prvního výskytu v oddílu zdrojového řetězce, který se rozšiřuje ze zadaného indexu na konec řetězce pomocí zadané CompareOptions hodnoty. |
| IndexOf(String, String, Int32, Int32, CompareOptions) |
Vyhledá zadaný podřetězec a vrátí index založený na nule prvního výskytu v oddílu zdrojového řetězce, který začíná na zadaném indexu a obsahuje zadaný počet prvků používající zadanou CompareOptions hodnotu. |
| IndexOf(String, String, Int32, Int32) |
Vyhledá zadaný podřetězec a vrátí index založený na nule prvního výskytu v oddílu zdrojového řetězce, který začíná na zadaném indexu a obsahuje zadaný počet prvků. |
| IndexOf(String, String, Int32) |
Vyhledá zadaný podřetězec a vrátí index založený na nule prvního výskytu v oddílu zdrojového řetězce, který se rozšiřuje ze zadaného indexu na konec řetězce. |
| IndexOf(String, String) |
Vyhledá zadaný podřetězc a vrátí index založený na nule prvního výskytu v celém zdrojovém řetězci. |
| IsPrefix(ReadOnlySpan<Char>, ReadOnlySpan<Char>, CompareOptions, Int32) |
Určuje, zda řetězec začíná konkrétní předponou. |
| IsPrefix(ReadOnlySpan<Char>, ReadOnlySpan<Char>, CompareOptions) |
Určuje, zda rozsah znaků jen pro čtení začíná konkrétní předponou. |
| IsPrefix(String, String, CompareOptions) |
Určuje, zda zadaný zdrojový řetězec začíná zadanou předponou pomocí zadané CompareOptions hodnoty. |
| IsPrefix(String, String) |
Určuje, zda zadaný zdrojový řetězec začíná zadanou předponou. |
| IsSortable(Char) |
Určuje, zda je zadaný znak Unicode seřazený. |
| IsSortable(ReadOnlySpan<Char>) |
Určuje, zda je zadané rozsahy znaků jen pro čtení unicode seřazené. |
| IsSortable(Rune) |
Určuje, zda je zadané Rune řazení možné. |
| IsSortable(String) |
Určuje, zda je zadaný řetězec Unicode seřazený. |
| IsSuffix(ReadOnlySpan<Char>, ReadOnlySpan<Char>, CompareOptions, Int32) |
Určuje, zda řetězec končí konkrétní příponou. |
| IsSuffix(ReadOnlySpan<Char>, ReadOnlySpan<Char>, CompareOptions) |
Určuje, zda rozsah znaků určený jen pro čtení končí konkrétní příponou. |
| IsSuffix(String, String, CompareOptions) |
Určuje, zda zadaný zdrojový řetězec končí zadanou příponou pomocí zadané CompareOptions hodnoty. |
| IsSuffix(String, String) |
Určuje, zda zadaný zdrojový řetězec končí zadanou příponou. |
| LastIndexOf(ReadOnlySpan<Char>, ReadOnlySpan<Char>, CompareOptions, Int32) |
Vyhledá poslední výskyt podřetězce ve zdrojovém řetězci. |
| LastIndexOf(ReadOnlySpan<Char>, ReadOnlySpan<Char>, CompareOptions) |
Vyhledá poslední výskyt podřetědce v zadaném rozsahu znaků jen pro čtení. |
| LastIndexOf(ReadOnlySpan<Char>, Rune, CompareOptions) |
Vyhledá poslední výskyt zadaného rozsahu Rune znaků jen pro čtení. |
| LastIndexOf(String, Char, CompareOptions) |
Vyhledá zadaný znak a vrátí index založený na nule posledního výskytu v celém zdrojovém řetězci pomocí zadané CompareOptions hodnoty. |
| LastIndexOf(String, Char, Int32, CompareOptions) |
Vyhledá zadaný znak a vrátí index založený na nule posledního výskytu v oddílu zdrojového řetězce, který se rozšiřuje od začátku řetězce na zadaný index pomocí zadané CompareOptions hodnoty. |
| LastIndexOf(String, Char, Int32, Int32, CompareOptions) |
Vyhledá zadaný znak a vrátí index založený na nule posledního výskytu v oddílu zdrojového řetězce, který obsahuje zadaný počet prvků a končí na zadaném indexu pomocí zadané CompareOptions hodnoty. |
| LastIndexOf(String, Char, Int32, Int32) |
Vyhledá zadaný znak a vrátí index založený na nule posledního výskytu v oddílu zdrojového řetězce, který obsahuje zadaný počet prvků a končí na zadaném indexu. |
| LastIndexOf(String, Char, Int32) |
Vyhledá zadaný znak a vrátí index založený na nule posledního výskytu v oddílu zdrojového řetězce, který se rozšiřuje od začátku řetězce na zadaný index. |
| LastIndexOf(String, Char) |
Vyhledá zadaný znak a vrátí index založený na nule posledního výskytu v celém zdrojovém řetězci. |
| LastIndexOf(String, String, CompareOptions) |
Vyhledá zadaný podřetězec a vrátí index založený na nule posledního výskytu v celém zdrojovém řetězci pomocí zadané CompareOptions hodnoty. |
| LastIndexOf(String, String, Int32, CompareOptions) |
Vyhledá zadaný podřetězec a vrátí index založený na nule posledního výskytu v oddílu zdrojového řetězce, který se rozšiřuje od začátku řetězce na zadaný index pomocí zadané CompareOptions hodnoty. |
| LastIndexOf(String, String, Int32, Int32, CompareOptions) |
Vyhledá zadaný podřetězec a vrátí index založený na nule posledního výskytu v oddílu zdrojového řetězce, který obsahuje zadaný počet prvků a končí na zadaném indexu pomocí zadané CompareOptions hodnoty. |
| LastIndexOf(String, String, Int32, Int32) |
Vyhledá zadaný podřetězec a vrátí index založený na nule posledního výskytu v oddílu zdrojového řetězce, který obsahuje zadaný počet prvků a končí na zadaném indexu. |
| LastIndexOf(String, String, Int32) |
Vyhledá zadaný podřetězec a vrátí index založený na nule posledního výskytu v oddílu zdrojového řetězce, který se rozšiřuje od začátku řetězce na zadaný index. |
| LastIndexOf(String, String) |
Vyhledá zadaný podřetězec a vrátí index založený na nule posledního výskytu v celém zdrojovém řetězci. |
| MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Object. (Zděděno od Object) |
| ToString() |
Vrátí řetězec, který představuje aktuální CompareInfo objekt. |
Explicitní implementace rozhraní
| Name | Description |
|---|---|
| IDeserializationCallback.OnDeserialization(Object) |
Spustí se, když byl deserializován celý graf objektu. |
Metody rozšíření
| Name | Description |
|---|---|
| GetStringComparer(CompareInfo, CompareOptions) |
StringComparer Vrátí objekt založený na pravidlech porovnání řetězců citlivých na jazykovou verzi zadaného CompareInfo objektu. |