Auf Englisch lesen

Freigeben über


String.CompareOrdinal Methode

Definition

Vergleicht zwei String-Objekte, indem die numerischen Werte der entsprechenden Char-Objekte in den Zeichenfolgen ausgewertet werden.

Überlädt

CompareOrdinal(String, String)

Vergleicht zwei String-Objekte, indem die numerischen Werte der entsprechenden Char-Objekte in den Zeichenfolgen ausgewertet werden.

CompareOrdinal(String, Int32, String, Int32, Int32)

Vergleicht Teilzeichenfolgen zweier angegebener String-Objekte, indem die numerischen Werte der entsprechenden Char-Objekte in den Teilzeichenfolgen ausgewertet werden.

CompareOrdinal(String, String)

Quelle:
String.Comparison.cs
Quelle:
String.Comparison.cs
Quelle:
String.Comparison.cs

Vergleicht zwei String-Objekte, indem die numerischen Werte der entsprechenden Char-Objekte in den Zeichenfolgen ausgewertet werden.

C#
public static int CompareOrdinal(string strA, string strB);
C#
public static int CompareOrdinal(string? strA, string? strB);

Parameter

strA
String

Die erste zu vergleichende Zeichenfolge.

strB
String

Die zweite zu vergleichende Zeichenfolge.

Gibt zurück

Eine ganze Zahl, die die lexikalische Beziehung zwischen den beiden Vergleichswerten angibt.

Wert Bedingung
Kleiner als 0 (null) strA ist kleiner als strB.
Zero strA und strB sind gleich.
Größer als 0 (null) strA ist größer als strB.

Beispiele

Im folgenden Beispiel wird ein Ordinalvergleich von zwei Zeichenfolgen durchgeführt, die sich nur in der Groß- und Kleinschreibung unterscheiden.

C#
// Sample for String.CompareOrdinal(String, String)
using System;

class Sample {
    public static void Main() {
    String str1 = "ABCD";
    String str2 = "abcd";
    String str;
    int result;

    Console.WriteLine();
    Console.WriteLine("Compare the numeric values of the corresponding Char objects in each string.");
    Console.WriteLine("str1 = '{0}', str2 = '{1}'", str1, str2);
    result = String.CompareOrdinal(str1, str2);
    str = ((result < 0) ? "less than" : ((result > 0) ? "greater than" : "equal to"));
    Console.Write("String '{0}' is ", str1);
    Console.Write("{0} ", str);
    Console.WriteLine("String '{0}'.", str2);
    }
}
/*
This example produces the following results:

Compare the numeric values of the corresponding Char objects in each string.
str1 = 'ABCD', str2 = 'abcd'
String 'ABCD' is less than String 'abcd'.
*/

Hinweise

Diese Methode führt einen Vergleich zwischen Groß- und Kleinschreibung mithilfe von Ordnungssortierungsregeln durch. Weitere Informationen zu Wort-, Zeichenfolgen- und Ordnungssortierungen finden Sie unter System.Globalization.CompareOptions. Um einen Vergleich ohne Berücksichtigung der Groß-/Kleinschreibung mithilfe von Ordnungssortierungsregeln durchzuführen, rufen Sie die Compare(String, String, StringComparison) -Methode auf, wobei das comparisonType Argument auf StringComparison.OrdinalIgnoreCasefestgelegt ist.

Da CompareOrdinal(String, String) ist eine statische Methode strA und strB kann sein null. Wenn beide Werte sind null, gibt die Methode 0 (Null) zurück, was angibt, dass strA und strB gleich sind. Wenn nur einer der Werte ist null, betrachtet die -Methode den Ungleich-NULL-Wert als größer.

Weitere Informationen

Gilt für:

.NET 10 und andere Versionen
Produkt Versionen
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0

CompareOrdinal(String, Int32, String, Int32, Int32)

Quelle:
String.Comparison.cs
Quelle:
String.Comparison.cs
Quelle:
String.Comparison.cs

Vergleicht Teilzeichenfolgen zweier angegebener String-Objekte, indem die numerischen Werte der entsprechenden Char-Objekte in den Teilzeichenfolgen ausgewertet werden.

C#
public static int CompareOrdinal(string strA, int indexA, string strB, int indexB, int length);
C#
public static int CompareOrdinal(string? strA, int indexA, string? strB, int indexB, int length);

Parameter

strA
String

Die erste im Vergleich zu verwendende Zeichenfolge.

indexA
Int32

Der Anfangsindex der Teilzeichenfolge in strA.

strB
String

Die zweite im Vergleich zu verwendende Zeichenfolge.

indexB
Int32

Der Anfangsindex der Teilzeichenfolge in strB.

length
Int32

Die maximale Anzahl der zu vergleichenden Zeichen der Teilzeichenfolgen.

Gibt zurück

Eine 32-Bit-Ganzzahl mit Vorzeichen, die die lexikalische Beziehung der beiden verglichenen Elemente angibt.

Wert Bedingung
Kleiner als 0 (null) Die Teilzeichenfolge in strA ist kleiner als die Teilzeichenfolge in strB.
Zero Die Teilzeichenfolgen sind gleich, oder length ist 0.
Größer als 0 (null) Die Teilzeichenfolge in strA ist größer als die Teilzeichenfolge in strB.

Ausnahmen

strA ist nicht null und indexA ist größer als strA.Length.

- oder -

strB ist nicht null und indexB ist größer als strB.Length.

- oder -

indexA, indexB oder length ist ein negativer Wert.

Beispiele

Im folgenden Beispiel wird veranschaulicht, dass CompareOrdinalCompare unterschiedliche Sortierreihenfolgen verwendet werden.

C#
using System;
using System.Globalization;

class Test
{
    public static void Main(String[] args)
    {
    String strLow = "abc";
    String strCap = "ABC";
    String result = "equal to ";
    int x = 0;
    int pos = 1;

// The Unicode codepoint for 'b' is greater than the codepoint for 'B'.
    x = String.CompareOrdinal(strLow, pos, strCap, pos, 1);
    if (x < 0) result = "less than";
    if (x > 0) result = "greater than";
    Console.WriteLine("CompareOrdinal(\"{0}\"[{2}], \"{1}\"[{2}]):", strLow, strCap, pos);
    Console.WriteLine("   '{0}' is {1} '{2}'", strLow[pos], result, strCap[pos]);

// In U.S. English culture, 'b' is linguistically less than 'B'.
    x = String.Compare(strLow, pos, strCap, pos, 1, false, new CultureInfo("en-US"));
    if (x < 0) result = "less than";
    else if (x > 0) result = "greater than";
    Console.WriteLine("Compare(\"{0}\"[{2}], \"{1}\"[{2}]):", strLow, strCap, pos);
    Console.WriteLine("   '{0}' is {1} '{2}'", strLow[pos], result, strCap[pos]);
    }
}

Hinweise

Die indexAParameter , indexBund length müssen nicht negativ sein.

Die Anzahl der verglichenen Zeichen ist die geringere Länge von strA weniger indexA, die Länge von strB weniger indexB, und length.

Diese Methode führt einen Vergleich zwischen Groß- und Kleinschreibung mithilfe von Ordnungssortierungsregeln durch. Weitere Informationen zu Wort-, Zeichenfolgen- und Ordnungssortierungen finden Sie unter System.Globalization.CompareOptions. Um einen Vergleich ohne Berücksichtigung der Groß-/Kleinschreibung mithilfe von Ordnungssortierungsregeln durchzuführen, rufen Sie die Compare(String, Int32, String, Int32, Int32, StringComparison) -Methode auf, wobei das comparisonType Argument auf StringComparison.OrdinalIgnoreCasefestgelegt ist.

Da CompareOrdinal(String, String) ist eine statische Methode strA und strB kann sein null. Wenn beide Werte sind null, gibt die Methode 0 (Null) zurück, was angibt, dass strA und strB gleich sind. Wenn nur einer der Werte ist null, betrachtet die -Methode den Ungleich-NULL-Wert als größer.

Weitere Informationen

Gilt für:

.NET 10 und andere Versionen
Produkt Versionen
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0